javascript-YUI:确保DOM元素和脚本已准备就绪

>如果将内联脚本放在与之交互的DOM元素之后,是否仍应使用YUI 3的domready event
我没有发现任何问题,看来我可以指望浏览器按顺序加载页面. (由于YUI脚本是一个单独的文件,因此我已经使用YUI().use(‘node’,…来确保已加载所需的YUI函数.)
>有没有办法加快YUI 2日历之类的小部件的加载?
我将appropriate script加载到< head>我页面的元素.我使用YUI().use(‘yui2-calendar’,…以确保Calendar窗口小部件可用.不幸的是,当我将页面加载到日历中时,这会导致短暂但明显的延迟.如果我省略YUI( ).use(‘yui2-calendar’,…代码然后显示出来而没有明显的延迟-但是我猜想如果没有及时加载YUI脚本,这可能会导致日历根本不显示?
>关于#2,是否可以减少日历中不存在的视觉假象,然后显示出来?
我通过为父div指定高度和宽度来使它稍微好一点,以便至少已经分配了空间=>加载时最小地移动.

解决方法:

>如果访问DOM元素的代码位于标记中的那些元素之后,则不需要domready.这通常适用于DOM脚本,而不仅仅是YUI.
> yui2-calendar与yahooapis.com/2.8.0r4/build/calendar/calendar-min.js不同.前者包括一些包装代码,用于在YUI 3实例环境中对Calendar API及其依赖项进行沙箱处理.如果您要在< head>中包含YUI 2脚本, (您可以将其放置在< body的末尾)(不必说),而无需使用yui2-calendar.这样做只会加载两次日历代码.否则,要利用YUI 3的动态异步加载,您可以从< head>中删除< script> s.并只使用(‘yui2-calendar’).您可以通过包含yui2- *组合< script>来获得加快渲染时间的外观.在yui-min.js种子文件之后的标记中.注意,加载程序将始终获取css文件,因此您无需在标记中包括该文件.

< script src =“ http://yui.yahooapis.com/combo?3.1.0/build/yui/yui.js”< / script>

< script src =“ http://yui.yahooapis.com/combo?2in3.1/2.8.0/build/yui2-yahoo/yui2-yahoo.js\u0026amp;2in3.1/2.8.0/build/yui2- dom / yui2-dom.js& 2in3.1 / 2.8.0 / build / yui2-event / yui2-event.js& 2in3.1 / 2.8.0 / build / yui2-calendar / yui2-calendar.js“> < / script>
>您可以在页面加载时包括渲染日历的css和标记,然后渲染到标记容器中.我不认为YUI 2日历具有逐步增强现有标记的概念,但是我可能是错的.它应该用其生成的标记来掩盖静态表标记,并激活UI.

上一篇:javascript – YAHOO.lang的jQuery版本(isUndefined,isNull,isString等)


下一篇:在javascript对象生成的链接中使用“ this”