1、在require编写的模块内部不能监听DOMContentLoaded事件
2、代码如下所示。
list.js:
define([ 'jquery', 'easyui'],function(){
document.addEventListener('DOMContentLoaded', functioin(ev){
console.log(ev); //不会打印任何信息
})
console.log(document.readyState);
})
config.js
require.config({
paths: {
'jquery': [
path+'/js/jquery-1.7.2.min'
],
'easyui':[
path+'/js/jquery.easyui.min'
],
'list':[
path+'/frame/shaicha/list/list'
]
},
shim: {
'easyui': {
deps: ['jquery']
}
}
});
require(['jquery','easyui','list'],function($,easyui,list){
console.log(document.readyState); //网速较慢时会打印loading
document.addEventListener('DOMContentLoaded', functioin(ev){
console.log(ev);//不会打印任何信息
})
listcommon.hander();
});
DOMContentLoaded事件是在DOM加载完之后及资源加载之前被触发,requirejs的回调是在js已经加载完之后才执行的,所以你注册的DOMContentLoaded在事件触发之后,必然不可能触发你注册的事件