/ / getElementsByTagName грешка с Greasemonkey на страница, базирана в extJS с прост случай - jquery, extjs, greasemonkey

getElementsByTagName грешка с Greasemonkey на страница, базирана в extJS с прост случай на използване - jquery, extjs, greasemonkey

Работя с помощта на greasemonkey в уеб-приложение, което изгражда DOM на етапи с много javascript и използва библиотеката extJS.

При липса на код на greasemonkey, сайтът обикновено се зарежда нормално.

Когато стартирам този код (или прост код, подобен на него):

jQuery( window ).load(function(){
alert("some text");
});

Получавам предупреждение да изскочи без проблем, но след това получавам тази грешка от firebug (а останалата част от приложението престава да се зарежда):

TypeError: container.getElementsByTagName не е функция

което сочи към този ред код:

   var MktMainNav={
topTabId:"mktTopTabList",
notAllowedMsg:MktLang.getStr("nav.Limited_access"),
init:function(){
var container=$(this.topTabId);
if(container){
var elts=container.getElementsByTagName("div");
for(var i=0;i<elts.length;i++){
var el=Ext.fly(elts[i]);el.on("click",this.click,elts[i]);
}
}
}
}

Така че не мога да редактирам този код, тъй като използвам greasemonkey, за да се опитам да променя вида на приложението.

Просто ми изглежда странно. Някакви идеи?

Отговори:

0 за отговор № 1

Това не е начина, по който използвате jQuery.load()доктор - което е AJAX функция. Най-доброто предположение от Q е, че се опитвате да направите:

window.addEventListener ("load", function () {
alert("some text");
},
false
);

Или:

jQuery (window).on ("load", function () {
alert("some text 2");
} );


За всичко друго, трябва да видим точния Greasemonkey скрипт и точната целева страница, за да сме сигурни, но най-вероятният проблем е някои вариации на @grant none смущения. виждам jQuery в Greasemonkey 1.0 е в конфликт с уеб сайтове, използващи jQuery, например.