我花了几个小时来处理这个问题。我已经准备好将我的项目一行行地拆分开来,以便弄清楚这个问题。但我想知道是否还有其他人有这个问题:
我的项目在Firefox中运行得很好。我的客户使用IE (经典-很多人都这样做……)。我老板要我昨天把这件事做完。
我无法让IE8或9(我的文档处于IE7模拟模式)运行以下命令并加载TabView。我在调试器控制台中得到一个错误,告诉我它没有加载它。我已经通过标记加载了tabview所需的所有模块,因此不依赖于Internet连接-离线操作(再一次..在Firefox中工作得很好)。
YUI({bootstrap:false,insertBefore: 'yui3-style-overrides', filter: ''}).use('tabview','tabview-base','event-synthetic','event','event-custom','event-mouseenter','oop','yui','dom','dom-base','node','io','datasource','resize','anim','anim-easing','event-base-ie','dom-style-ie','node-focusmanager','node-event-simulate','plugin','classnamemanager','pluginhost','event-base','tabview-plugin','attribute','base','widget','widget-base-ie','arraylist','widget-parent','widget-child','event-simulate',function(Y) {
/* sand boxed code here */
});发布于 2011-04-09 00:20:44
最近yui (3.2或3.3)在构建中将他们的ie修复分解到单独的文件中。这也给我带来了噩梦。如果你想隔离你的变量,你可以用3.1.1来测试它。
更让我发疯的是,我愚蠢地使用了YUI PHP Loader,随着YUI的每次发布,它都变得更糟,因为YUI得到了如此多的依赖,即使是像PHP Loader这样的破解垃圾也无法解决所有情况。
我通过使用以下命令手动加载所有-ie-文件来解决此问题
<!--[if IE 7]><script type="text/javascript" src=myfile.js></script><![endif]-->
在我能够想出一个更智能但更大的PHP Loader版本之前的一两个月里(可惜,我不能分享它)。
要查看这是否是您的问题,请对build文件夹中的每个ie特定文件使用上面的if IE脚本。下面是一个列表:
build/dom/dom-style-ie-debug.js
build/event/event-base-ie-debug.js
build/history/history-hash-ie-debug.js
build/scrollview/scrollview-base-ie-debug.js
build/widget/widget-base-ie-debug.js如果我是你,我会手动加载所有这些,也许除了历史记录,你可能不需要-这样你就可以最小化你的变量。
TBH,当我遇到这个问题并解决它时,我加载了每个yui JS文件。花了一段时间,但bug消失了,我热衷于寻找-ie- files问题。
https://stackoverflow.com/questions/5551868
复制相似问题