2011-10-21 6 views
0

여기에 드문 문제가 있습니다.탭 대신 TinyURL 팝업창이 열립니다

내 URL을 줄이기 위해 tinnyURL 서비스를 호출해야하는데 정상적으로 작동합니다. 그 후에 다른 탭을 호출해야하지만, 어떤 이유에서 팝업을 호출합니다.

tinyURL 서비스를 호출 할 때 문제가 있다고 가정하고 있지만이를 수정하는 방법을 모르겠습니다.

아래 코드는 제가 작성한 코드입니다. (sendAndLoad에();)

variables.url = String("http://www.google.com"); 
sendAndLoad("http://tinyurl.com/api-create.php", variables); 


// tinyURL service 
private function sendAndLoad(url:String, _vars:URLVariables):void { 

    request = new URLRequest(url); 
    request.data = _vars; 
    request.method = URLRequestMethod.POST; 
    _urlloader = new URLLoader(); 
    _urlloader.dataFormat = URLLoaderDataFormat.TEXT; 


    _urlloader.addEventListener(Event.COMPLETE, handleComplete); 
    _urlloader.load(request); 

} 
// once I get the tinyURL response this function is triggered 
private function handleComplete(event:Event):void { 
    var s:String = event.target.data; 
    finalURL = "http://twitter.com/home?status=" + MESSAGE + " " + s; 
    var url:URLRequest = new URLRequest(finalURL); 
    navigateToURL(url); 
} 

그래서 나는 같은합니다 (의 tinyURL없이) 페이스 북에 "방법-DO-에"그것이 제대로 작동, 나는 그것이 첫 번째 방법에서 문제가 생각이

http://skovalyov.blogspot.com/2007/01/how-to-prevent-pop-up-blocking-in.htmlhttp://snipplr.com/view.php?codeview&id=29544

PS :

는 이미 같은 대안을 사용했습니다 내가 크롬에의 팝업 차단을 해제 할 경우 트위터는 노력하고 있습니다. 내가하고 싶은 것은 새로운 탭에서 열면됩니다.

여러분이 이미 그런 문제가 있다면 알려주세요. 꽤 귀찮습니다!

감사합니다.

+0

좋습니다. 바로 알려주세요. 어떤 브라우저에서든 몇 개의 탭을 열려고합니까? 단지 당신은 창/탭이 어떻게 열리는 지에 대한 브라우저 설정이기 때문에 이것에 대한 제어권이 없다는 것을 알 수 있습니다. –

+0

은 http://stackoverflow.com/questions/726761/javascript-open-in-a-new-window-not-tab을 참조하십시오. –

답변

1

귀하의 팝업 차단에 대한 여러 가지 이유가있을 수 있지만이 경우 팝업은 클릭이나 키보드 입력과 같은 사용자 이벤트에 반응하지 않기 때문입니다.

귀하의 경우에는 사용자가 트위터에 게시하도록 선택하기 전에 배경에서 URL을 짧게 만드는 것을 의미하며 마우스를 클릭하면 해당 마우스 이벤트에 응답하여 새 페이지를 엽니 다.

0

다시 한 번 문제를 파악했습니다.

내가 한 것은 TinyURL 서비스를 피하고 아래의 Twitter 페이지 업데이터를 직접 호출하는 것이 었습니다. URL의 나머지는 더러운 일을한다 : 당신은 "// HTTP"을 연결할 때

var myString:String = "http://twitter.com/home?status=" + MESSAGE + " " + LINK; 
var url:URLRequest = new URLRequest(myString); 
navigateToURL(url); 

다행스럽게도, 트위터는 자신의 URL 축약 서비스가 있습니다.

고맙습니다.