Javascript 使用head.js有什么缺点吗?

Javascript 使用head.js有什么缺点吗?,javascript,jquery,head.js,Javascript,Jquery,Head.js,我所知道的事情: 如果脚本改变了样式/内容,屏幕就会闪烁(这对我来说不是问题,因为我目前在页面末尾加载脚本,所以已经有了解决方法) 无法检测到脚本加载失败(不太关心这一点,因为我开发的所有东西都需要使用或不使用javascript。这可能会影响我针对第1项的解决方法,但对这种风险感到满意) 它对我来说是一个非常好的选择,但我希望在我投入时间将它纳入我的下一个项目之前,能有一些参考资料(请随意说一些积极的事情!) 目前,我们开发的中大型站点通常使用适量的Javascript(尽管这一数量正在快速增

我所知道的事情:

  • 如果脚本改变了样式/内容,屏幕就会闪烁(这对我来说不是问题,因为我目前在页面末尾加载脚本,所以已经有了解决方法)

  • 无法检测到脚本加载失败(不太关心这一点,因为我开发的所有东西都需要使用或不使用javascript。这可能会影响我针对第1项的解决方法,但对这种风险感到满意)

  • 它对我来说是一个非常好的选择,但我希望在我投入时间将它纳入我的下一个项目之前,能有一些参考资料(请随意说一些积极的事情!)

    目前,我们开发的中大型站点通常使用适量的Javascript(尽管这一数量正在快速增长)。我们还将jQuery库用于大部分Javascript

    有人有经验吗?好还是坏!:)


    另外,对于那些感兴趣的人来说,大量使用jquery或javascript库不会有问题。尝试将每个库作为唯一的主库

    我正在使用prototype、scriptaculous、jquery和更多的jquery附加插件。加载整个脚本时,我遇到了一个错误。然后我发现它是由于$sign引起的,这是jquery和prototype的一个重要参数

    我用过

        $.noConflict();
    jQuery(document).ready(function($){
    //jquery codes here
    })
    

    因此,保持脚本库的唯一性

    不。只要您将依赖于加载文件的任何代码放在head.ready{}中,您的代码就不会遇到任何问题。

    当页面上有JS链接/操作时,可能会出现问题。在脚本完全加载之前,它们不会工作(或者像没有JS一样工作)。这可能是个问题,也可能不是,这取决于你是如何构建的。

    我很感兴趣,并考虑可能也使用head.js,但我发现了一些不太好的东西:在你给我的url中有三个选项卡按钮:

    SCRIPT          SCRIPT SRC     head.js 
    SRC in head     on bottom      on head 
    
    Shift+Ctr+Refresh对我来说几乎没有什么区别(三条@120mbit线路之间的+/-10ms,firefox 3.6.13)


    当我使用Ctr+R刷新时,head.js上的结果始终比没有head.js的其他两个版本慢100毫秒所以,它并不总是更快。

    以下是我对head.js的结论,我自己做了一些基准测试:


    这是主观的观点,基准测试根本不科学。

    head.js()
    给我的页面带来了一个问题。我的
    asp:button
    OnClick事件都不起作用。但是如果我以传统的方式包含脚本(
    谢谢你的回答-这是一个很好的建议,但我不确定这完全是我要问的。我在寻找head.js特有的问题,而不是通常使用多个库:),我只是分享了我面临的问题。为了在你的项目中节省你的时间。谢谢菲尔-你以前自己用过吗?我怀疑任何看起来这么简单的事情!:)是否可以使用headJS加载commonJS模块?谢谢您的回复!目前,我在正文末尾加载任何JS文件。如果我编写了一些在加载这些外部文件之前嵌入的功能,那么我会在一个单独的.js文件中创建要执行的对象。我怀疑使用head.js时,js可能会在内容之后加载,如果这些脚本依赖于尚未加载的项目,则可能会发生错误。如果这是你所警告的,那么我认为这是一个可以接受的风险。然而,偶尔我也会有一些JS,在主体中没有依赖关系。如果这些可能失败,那么这是一个相当严重的问题,因为me headjs始终在120ms左右,但其余的在300-1k ms之间。@Raynos,您是否使用了Ctr+R、Ctr+F5或Ctr+Shift+R?所有这些。当然,ctrl+shift+r/f5在正常情况下速度较慢,但在headjs上没有什么不同。很有趣!在您的情况下,head.js确实让事情变得糟糕,而。。。也许是我的浏览器没有发挥应有的作用。淘气的狐狸!在DOM完成渲染之前,我先隐藏内容,然后在
    head.ready()
    中调用
    show()
    ,直到找到更好的方法来加载内容。这样,仍然有一个flickr,但是只有一个flash,而且内容在一瞬间还没有呈现一半。