2013-03-11 2 views
-1

사용자가 인증 된 경우에만 팔로우 할 수있는 사이트의 공개 뷰에 링크가 있습니다. 이제 익명 사용자가 링크를 클릭하면 로그인 모달이 팝업됩니다. 링크가 클릭 된 ID를 저장하고 로그인 자격 증명과 함께 보냅니다. 그런 다음 페이지가 새로 고쳐 $(document).ready()에 내가 클릭을 유발하고는 href 속성을 따르도록 기대와jquery triggerd를 사용하여 새 탭을 엽니 다.

$('selectedLink').trigger('click'); 

내가 찾은 문제를 않습니다. 그래서 지금은 onclick 속성을 가지고있다. onclick 속성에는 내가 말한 행이 있습니다. window.open(url)

브라우저는 팝업 차단기로 항상 차단되지만 괜찮습니다. 스크립트에서 클릭을 트리거하고 새 탭을 열 수있는 방법이 있습니까 ??

+0

window.open (url)이 (가) 새 탭을 엽니 다. 어떤 브라우저에서 문제가 있습니까? – tymeJV

+0

@tymeJV http://jsfiddle.net/vyW3V/1/ 참조, "팝업 차단"방법을 참조하십시오. –

+0

페이지로드시 ... 실제로 버튼을 클릭하면 정상적으로 작동합니다. (IE9를 사용하는 임) Nvm, 나는 네가 뭘 하려는지 깨달았다./facepalm. – tymeJV

답변

1

탭을 열 때 클릭 한 후 처리가 많이 필요하지 않으므로 지연이 발생할 수 있습니다.

클릭하면 새 탭을 열 수있는 권한과 비슷합니다. 사용 권한을 사용하기에 너무 오래 걸리면 브라우저에서 의심스러운 것으로 알릴 수 있습니다. &은 팝업으로 분류합니다. 당신이 열려있는 탭을 공유 할 수 있다면

/리디렉션 기능 ...

+0

나는 ajax 호출 후에 window.open()을 가지고있다. 나는 Ajax 전에 이동하려고 시도한다. –

+0

예. 우리에게 알려주고 알려주세요. – loxxy

+0

나는 브라우저가 로컬 호스트가 팝업을 만들도록 허용 할 것이므로 실제로 테스트하기 위해 베타 사이트에 게시해야한다. –

-1

새 창에서 열리거나 새 탭이 사용자에 의해 완전히 결정되는지 여부, 즉 간단히 말해서 아니요, 새 탭을 강제로 열 수는 없습니다.

window.location.replace(...newurl...)을 사용하면 동일한 창에서 사용자를 리디렉션 할 수 있습니다.

+0

그것이 작동했다하더라도 window.location = ".."; –

+0

리디렉션을 허용하지 않는 jsfiddle이 아닌 것이 확실합니까? –

+0

예, jsfiddle이 차단하지만 작동하지 않습니다. window.location.replace를 사용하는 이유는 브라우저에서 세션의 이전 페이지를 로깅하지 않기 때문입니다. 즉, '뒤로'를 클릭하면 리디렉션 루프에 걸리지 않습니다. 사용자가 페이지를 두 번 명시 적으로 방문하지 않았으므로 더 이해하기 쉽습니다. –

0

대신 "_blank"의 "_newTab"

window.open (URL, "_newtab")을 시도하십시오;

관련 문제