3

我的网站现在几乎都是 AJAX,我正在将 jQuery 动画推向极限。

使用动态分页和 jQueryanimate在除 Chrome 和 IE9+ 之外的所有浏览器上看起来都很糟糕。

我的猜测是,这是因为 Chrome(IE9+?)是唯一默认启用 JS 多线程或多线程的浏览器。

甚至可以在 JS/HTML/etc 中的其他浏览器上打开它吗?

提前谢谢了!

剖析

众所周知,我的词汇量很差,所以一开始我不明白这个词。

是的,我一直在寻找更好的方法来改进我的代码。为了速度,例如克隆而不是附加字符串 html、一次选择多个元素等。

它在 Chrome 和 IE9+ 中运行顺畅,在其他所有方面都很差(在默认的 Android 2.2 和 iPhone 移动浏览器中最差)。

多线程

我从这里得到它并接受它,因为它是有道理的。如果有错误,请告诉我,我将编辑问题以确保适当性。

我的动态分页

基本上,我通过一个循环append cloned opacity:0 absolute divs到一个relative容器。for克隆的 div 中的一些细分也可能被克隆,因为我也通过for循环有更多的子行。我top把它增加到一个累积的高度,给每个附加的 div 添加 10px。一旦准备好,我animateopacity:1. 如果一个absolute需要留在那里,它的'top只是动画,没有其他变化。

所有动画 500 毫秒。所有用 CSS 预格式​​化的 div。没有图像。它就像我希望的那样简单,并且在 Chrome 和 IE9+ 中运行良好。

4

1 回答 1

2

Profile your code, maybe use the built in tools that Safari has, to verify animations ( or dynamic pagination) are causing the issue. Consider writing some of your jQuery animations in pure JavaScript. I re-wrote the fade function using about 10% of the code that jQuery uses, but with the trade-off that it is targeted for modern browsers only.

Performance Boosts per Joe:

http://net.tutsplus.com/tutorials/javascript-ajax/10-ways-to-instantly-increase-your-jquery-performance/

于 2012-12-16T18:40:02.510 回答