2013-11-11 4 views
1

Я пытаюсь добавить простой скрипт контента на вкладку, которая запускается, когда все запросы jquery ajax выполняются. Когда я открываю страницы с помощью jQuery ajax (например:), ничего не происходит.Невозможно использовать jQuery ajaxComplete в сценарии содержимого

У меня есть следующий код:

main.js

const tabs = require('sdk/tabs'); 
var worker = tabs.activeTab.attach({contentScriptFile: [data.url('jquery-1.10.2.min.js'), data.url('tab.js')]}); 

tab.js

$(document).ajaxComplete(function() {alert('Ajax complete')}); 

ответ

1

Вы должны взаимодействовать с экземпляром JQuery работает на странице (если таковые имеются), а не тот, что в вашем скрипте содержимого.

main.js

const {data} = require("self"); 
const {PageMod} = require("sdk/page-mod"); 

PageMod({ 
    include: "http://demos.9lessons.info/wall/index1.php", 
    contentScriptFile: data.url("alert.js"), 
    contentScriptWhen: "ready" 
}); 

alert.js

if (unsafeWindow.jQuery) { 
    unsafeWindow.jQuery(document).ajaxComplete(function() { alert("complete"); }); 
} 
+0

Спасибо за ответ, но это не работает, это работает только для первого AJAX на этой странице. Если я выдаю другие запросы ajax позже, я не получу окно предупреждения. – zzz

+0

Пожалуйста, уточните ?! – nmaier

Смежные вопросы