我的应用程序正在使用jQuery.getScript()加载外部 javascript 文件。当我使用小书签或扩展程序启动应用程序时,一切正常。当应用程序通过 KBX 安装时,虽然在带有KBX 扩展名的Chrome中,javascript 文件中包含的函数不再可以在回调中访问,我得到:Uncaught ReferenceError: myfunc is not defined。
有什么技巧可以访问包含的功能吗?
书签:javascript:(function(){var d=document;var s=d.createElement('script');s.text="KOBJ_config={'rids':['a1135x30']};";d.body.appendChild(s);var l=d.createElement('script');l.src='http://init.kobj.net/js/shared/kobj-static.js';d.body.appendChild(l);})()
Chrome 扩展程序:crx
通过 KBX 安装的 url:KBX上的应用程序
这是规则集:
ruleset a1135x30 {
meta {
name "test_external_js_loading"
description <<
debugging external loading in kbx
>>
author "loic devaux"
logging on
}
dispatch {
domain ".*"
}
global {
}
rule first_rule {
select when pageview ".*" setting ()
// pre { }
// notify("Hello World", "This is a sample rule.");
{
emit <|
$K.getScript('http\:\/\/lolo.asia/kynetx_debug/js/myfunc.js',function() {
myfunc();
/*
* myfunc.js content:
myfunc = function(){
console.log('running myfunc');
};
*/
}
);
|>
}
}
}