JQuery的一些注意事项

Posted 圈地自萌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JQuery的一些注意事项相关的知识,希望对你有一定的参考价值。

1. toggle(speed, callback)函数适用于jQuery框架隐藏的页面元素或在CSS中声明为“display:none”的页面元素,但是它不适用于在CSS声明为“visibility:hidden”的页面元素。

因为 visibility:hidden 对象隐藏后,还占据相应的空间大小。而JQuery的hide及show是在通过操作display属性来实现,toggle()函数用于切换hide()和show()函数。

2. 除非规定了callback函数,否则,当使用fadeIn()函数实现页面元素“淡入”效果时,如果该元素已显示,则该效果不产生任何变化;当使用fadeOut()淡出函数时,如果该元素已隐藏,则无效。同样,fadeIn()不适用于 visibility:hidden 的元素。

3. 除非规定了callback函数,slideToggle()函数对元素效果是可见的不产生效果。

4. animate动画函数需要修改html元素的位置属性。如果要对位置进行操作,要在页面css样式中把元素的position设置为 relative、fixed或者absolute。

5. $(selector).live(event,data,function),bind(), delegate()区别:

 

live方法,只有在click事件发生的时候,才会去检测绑定事件的对象target是否存在,所以live方法可以实现后来新增子元素(如由脚本创建的新元素)的事件的绑定。

bind会在事件在绑定阶段bind时就会判断绑定事件的对象target是否存在,而且只针对当前元素进行绑定,而不是绑定到父节点上。

<script type="text/javascript">
    $(function () {
        $("#btn1").bind("click", function () { alert("bind"); });
        $("#btn2").bind("click", function () { alert("bind"); });
        $("#btn1").live("click", function () { alert("live"); });
        $("#btn2").live("click", function () { alert("live"); })
        $("body").append("<span id=\"btn2\">按钮2</span>")
    });
</script>
<body>
    <span id="btn1">按钮1</span>
</body>

按钮1会触发bind和live的绑定事件。

按钮2会触发live的绑定事件。不会触发bind的事件,因为绑定click事件的时候按钮2还没有生成。

以上是关于JQuery的一些注意事项的主要内容,如果未能解决你的问题,请参考以下文章

VS Code中自定义Emmet代码片段

Visual Studio 2012-2019的130多个jQuery代码片段。

jQuery应用 代码片段

很实用的JQuery代码片段(转)

使用 NodeJS 和 JSDOM/jQuery 从代码片段构建 PHP 页面

几个有用的JavaScript/jQuery代码片段(转)