YUI 3的YUI Loader不加载tabview

时间:2011-04-05 12:33:49

标签: yui

我花了好几个小时处理这个问题。我准备把我的项目分开,一行一行地解决这个问题。但我想知道是否有其他人有这个问题:

我的项目在Firefox中运行良好。我的客户使用IE(经典 - 很多人做...)。我的老板要我昨天完成这件事。

我无法获取IE 8或9(我的文档在IE 7仿真模式下)运行以下内容,并加载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 */

});

1 个答案:

答案 0 :(得分:2)

最近yui(3.2或3.3)将他们的修复因素分解为构建中的单独文件。这对我来说也是一场噩梦。如果要隔离变量,可以使用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之前的一两个月(其中,唉,我无法分享)。

要查看这是否是您的问题,请在构建文件夹中为每个IE特定文件使用if if if script。这是一个清单:

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-文件问题很热。