优化jQuery代码

时间:2011-07-08 16:08:51

标签: javascript jquery

如何优化此示例代码段:

请注意,它有多个调用来查找#data和#click标签。


$(function(){
    $('#data').hide();
    $('#click').click(function() {
      $('#data').toggle('', function() {
      });
    $('#click').hide();
    });
})

3 个答案:

答案 0 :(得分:4)

两行代码。

<style type="text/css">
 #data{display:none;}
</style>

<script>
$(function(){
    $('#click').click(function(){
       $('#data,#click').toggle();
    });
});
</script>

<div id="data">Some data</div>

<button id="click">Click me</button>

答案 1 :(得分:2)

不确定

$(function(){
    var data = $('#data');
    var click = $('#click');

    click.click(function() {
        data.toggle();
        $(this).hide();
    });
});

如果您打算稍后使用它们,请将选择器缓存在变量中。不要将jQuery用于CSS可以完成的任务。因此,不要将datadata.hide()隐藏在display:none的CSS中。

请参阅此问题:jQuery Standards and Best Practice

答案 2 :(得分:1)

是的,没有必要重复$(“#data”)和$(“#click”) - 将它们分配给变量然后重复使用它们。在您当前的代码中,必须两次找到项目。