Как я могу открыть новое окно, используя URL-адрес, созданный внутри функции обратного вызова getScript, и избежать всплывающих окон блокировщики всплывающих окон?

У меня возникла проблема: когда я пытаюсь сделать что-то вроде приведенного ниже кода, окно блокируется блокировщиками всплывающих окон. Я использую getScript, чтобы делать междоменные запросы. Я использую jQuery 1.4.2, чтобы сделать следующее.

Пример кода, который будет заблокирован:

//Code that gets blocked by pop-up blockers
$(document).ready(function(){
    $(".popup").click(function(){
        $.getScript("URL_To_A_Javascript_File", function(){
            window.open("dynamicURL", "_blank");
        });
    });
});

Пример кода, который проходит мимо блокировщиков, но не получает URL вовремя:

//This code will get past the pop-up blocker, but the var url won't be updated 
//with the dynamicURL before the window.open() fires in browsers 
//like safari or chrome.
$(document).ready(function(){
    var url;
    $(".popup").click(function(){
        $.getScript("URL_To_A_Javascript_File", function(){
            url = "dynamicURL";
        });
        window.open(url, "_blank");
    });
});

Как я могу открыть новое окно, используя URL-адрес, созданный в функции обратного вызова getScript, и избежать блокировщиков всплывающих окон?

5
задан Adam Link 21 April 2015 в 00:41
поделиться