javascript - requirejs无法监听DOMContentLoaded事件

查看:263
本文介绍了javascript - requirejs无法监听DOMContentLoaded事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

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在事件触发之后,必然不可能触发你注册的事件

这篇关于javascript - requirejs无法监听DOMContentLoaded事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆