Javascript 异步加载qUnit
我正在尝试在js中加载QUnit,但QUnit.js中的addevent函数从未启动,只是无法工作:Javascript 异步加载qUnit,javascript,jquery,asynchronous,dependency-injection,qunit,Javascript,Jquery,Asynchronous,Dependency Injection,Qunit,我正在尝试在js中加载QUnit,但QUnit.js中的addevent函数从未启动,只是无法工作: var appendQUnit = document.createElement('script'); appendQUnit.src = 'js/utility/qunit/qunit.js'; appendQUnit.type = 'text/javascript'; document.getElementsByTagName('head')[0].appendChild(appendQ
var appendQUnit = document.createElement('script');
appendQUnit.src = 'js/utility/qunit/qunit.js';
appendQUnit.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(appendQUnit);
您可以使用jquery的,例如:
$.getScript('js/utility/qunit/qunit.js', function() {
// here you can handle the qunit code
});
因为浏览器总是以异步模式加载javascript文件,所以您需要一些回调来放置处理新加载的js代码的代码。您可能还需要调用QUnit.load()来初始化QUnit:
$.getScript('js/utility/qunit/qunit.js', function(){
QUnit.load();
// here you can handle the qunit code
});
在代码中或作为书签使用以下内容: 代码 小书签 javascript:void(函数foo(){var head=document.getElementsByTagName(“head”)[0];var qUnitJS=document.createElement(“脚本”);var qUnitCSS=document.createElement(“链接”);qUnitCSS.rel=“样式表”qUnitCSS.type=“text/css”qUnitJS.src=”http://qunitjs.com/resources/qunit.js“head.appendChild(qUnitJS);head.appendChild(qUnitCSS);qUnitCSS.href=”http://qunitjs.com/resources/qunit.css“qUnitJS.onload=函数(){};}()) 在Firefox中,将
about:config
中的security.mixed\u content.block\u active\u content
设置为false,以bookmarklet的形式运行
参考资料
load()
在当前版本中没有文档记录,所以我不确定要相信它到什么程度,但在尝试了几个小时我能找到的一切之后,这是唯一让qunit和Requirejs配合得很好的东西。谢谢。我使用的是QUnit.init();QUnit.start()代码>。我得到了测试,但没有用户代理或选项。
void(function foo()
{
/* get head element */
var head=document.getElementsByTagName("head")[0];
/* create script and link elements */
var qUnitJS = document.createElement("script");
var qUnitCSS = document.createElement("link");
/* link rel and type attributes required for lazy loading */
qUnitCSS.rel="stylesheet";
qUnitCSS.type="text/css";
/* define script src attribute to lazy load */
qUnitJS.src = "http://qunitjs.com/resources/qunit.js";
/* append script and link elements */
head.appendChild(qUnitJS);
head.appendChild(qUnitCSS);
/* define link href after DOM insertion to lazy load */
qUnitCSS.href="http://qunitjs.com/resources/qunit.css";
/* call tests after QUnit loads */
qUnitJS.onload = function () {};
}() )
javascript:void(function foo(){var head=document.getElementsByTagName("head")[0]; var qUnitJS = document.createElement("script"); var qUnitCSS = document.createElement("link"); qUnitCSS.rel="stylesheet"; qUnitCSS.type="text/css"; qUnitJS.src = "http://qunitjs.com/resources/qunit.js"; head.appendChild(qUnitJS); head.appendChild(qUnitCSS); qUnitCSS.href="http://qunitjs.com/resources/qunit.css"; qUnitJS.onload = function () {};}() )