Проблема с динамически добавленным элементом скрипта - атрибут src пуст - PullRequest
0 голосов
/ 19 мая 2010

У меня проблема с динамически добавленным элементом сценария (с использованием jQuery). Код для добавления нового элемента скрипта в DOM:

var pScript = document.createElement("script");
pScript.type = "text/javascript";
pScript.src = sFile;


// Add element to the end of head element
$("head").append(pScript);

Сценарий добавлен без проблем, и код работает отлично.

Но проблема возникает, когда я пытаюсь найти только что добавленный скрипт. Я использую этот код для перебора всех элементов скрипта:

var bAdd = true;
$("script").each(function()
{
  if(this.src == sFile)
    bAdd = false;
});

(мне нужен этот код для предотвращения добавления уже загруженного скрипта)

Проблема в том, что все остальные элементы скрипта имеют установленный атрибут src, но недавно добавленный (динамически) не имеет ...

Есть идеи?

1 Ответ

1 голос
/ 19 мая 2010

Если src на самом деле пусто (из-за какой-то меры безопасности или чего-то еще), вы можете попробовать что-то еще, например

var include = (function() {
    var included = {};
    return function(url) {
        if (!url in included){
            //include script
            ...
            included[url] = true // you can set it to anything
        }
    };
})();

ОБНОВЛЕНО код, чтобы не загрязнять прицел с помощью included.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...