Mir*_*cea 17 css jquery addclass
我有一个很大的jQuery代码,我正在考虑我的函数的速度性能.单击某个元素(mousedown)时,我需要将图像指定为背景.我可以通过两种方式做到这一点:
$('#element li.class').css({"background":"someimageURL"});
Run Code Online (Sandbox Code Playgroud)
要么
$('#element li.class').addClass("someclass");
Run Code Online (Sandbox Code Playgroud)
其中"someclass"具有实际的CSS背景图像.在这种情况下,巫婆功能更好.
有没有办法测试各种功能的速度?
谢谢
Sam*_*son 16
我几乎可以肯定.addClass()
,两者中的速度会更快.这主要涉及为元素添加另一个类名,而替代方法则需要遍历元素样式并设置许多显式规则.
设置一对css规则$.css()
可能没有什么可担心的,但是如果你发现自己设置了很多,通常是时候创建一个类并根据需要应用/删除它.
我已将两种方法的逻辑提取到一个位置,供您查看.
小智 10
添加类绝对更快,请参阅$.addClass()
vs $.css()
vs $.removeClass().addClass()
vs js的性能测试- http://jsperf.com/jquery-css-vs-addclass-speed/2