是否在每个循环中应用jQuery插件比使用传统方式更糟糕的性能?

时间:2015-04-08 18:10:53

标签: javascript jquery performance

以这种方式应用插件:

        $('.zoom').zoom({
            on: 'grab',
            url: 'http://i.imgur.com/giJudUh.jpg'
        });

表现比这种方式更差:

        $('.zoom').each(function() {
            $(this).zoom({
                on: 'grab',
                url: $(this).data('zoom-url')
            });
        });

我需要第二种方式,因为每个" .zoom"缩放网址必须不同。元件。第二种方式允许我从元素本身的数据属性中获取唯一的URL。

只是想知道第二种方式是否以任何方式对性能都不利。

1 个答案:

答案 0 :(得分:3)

不,在这种情况下,他们确实完全相同:https://github.com/jackmoore/zoom/blob/master/jquery.zoom.js#L85

$.fn.zoom = function (options) {
    return this.each(function () {

可能唯一的区别是$('.zoom').each(...需要$.fn.each运行两次。