用IE动态加载SCRIPT使用的是SCRIPT DOM中的onreadystatechange事件监听加载情况,但是在js有cache和没cache情况下状态是不一样的,这给开发者带来了很大的麻烦。
no cache:
complete js加载了,但是js里面的定义全部都未在window中存在。
loaded js加载完成并且js定义在window存在。
cache:
complete js加载了,并且定义在window中存在。
这就有一个问题,监听loaded,只在没有cache情况下有效,监听complete,在no cache情况下会出问题,而且开发者也不知道是否有cache。
只有一个折中的方式,在complete的时候具体回调判断需要请求的js是否初始化完成,如果没有初始化完成继续监听loaded事件。好恶心的一个做法!!!
没有评论:
发表评论