我现在有个html,1万多行。
当我执行完最后一个js,也就是jquery的ready方法后,发现界面还要等1分钟左右才能出来。所以我想问,界面在执行完jquery的ready方法后,还干什么了???请高手教我。

解决方案 »

  1.   


    任何软件处理一万行文本都会卡的(不要说还有DOM操作)建议拆成10个页面 或者把数据内容分页
      

  2.   

    客户规定IE6,浏览器不能改。Google浏览器或Opera虽好,但客户真正用的有几个。再强调我想问的问题:界面在执行完jquery的ready方法后,还干什么了???因为我通过firebug打log,发现从ready方法执行完,到画面出来,还有1分钟左右的时间,不知道这一分多钟,IE都干什么了。
      

  3.   

    您老是print 1到10000万吧,如果是单纯的数字,是不会卡。~
      

  4.   

    jQuery的ready相当于DOMContentLoaded, 就是DOM加载完成后执行,之后会加载图片,是不是你的页面有很多图片?
      

  5.   

    jQuery的ready主要加载页面上的所有DOM对象  不加载图片或Flash的大小和样式,很可能就是存在图片或是其他流媒体
      

  6.   

    应该是在做很多js交互吧,比如动态插入节点,弹出层,tab等。建议优化这些交互的js
      

  7.   


    如何分块可否说的详细些???如果是分页就算了,现在有分页。
    ready方法执行完后,没有其他的js脚本再运行。没有flash,几个图片,css删除后测试一样慢。js里无非就是给节点设置值。我最后一行log是在ready方法的最下面。我总觉得是js改变节点的值后,由于dom树比较大,所以刷新起来慢。但具体是不是这样我不确定。有没有高数给讲下,用js改变节点的值后,dom树是如何进行重新编译的。如何减少dom树重构带来的性能消耗。
      

  8.   

    设置值的地方最好用id便于查找,数据量大的时候浏览器加载数据和渲染都需要很长时间,如果是IE的话就不要说了。
      

  9.   

    有一个思想你可以借鉴一下,就是利用时间分摊算法,把在一起执行的代码分摊到多个函数分别执行,使用setTimeout延迟执行
      

  10.   

    把你的js代码放在body的onload函数中试一下,如果还是很慢,那应该拆分你的页面了。