Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery和bind之间的区别_Jquery - Fatal编程技术网

jquery和bind之间的区别

jquery和bind之间的区别,jquery,Jquery,朋友们,以下代码片段之间有什么区别吗 $('.has-child > a').on("click", function() { $(this).parent().find("ul").slideToggle('fast'); var classname = $(this).find("i").attr('class'); $(this).find("i").toggleClass("fa f

朋友们,以下代码片段之间有什么区别吗

  $('.has-child > a').on("click", function() {
                $(this).parent().find("ul").slideToggle('fast');
                var classname = $(this).find("i").attr('class');
                $(this).find("i").toggleClass("fa fa-minus-square").toggleClass("fa fa-plus-square");
            });

有什么区别?如果你能帮我,我将不胜感激。谢谢

$('.has child>a')。打开(“单击”,函数()

$('.nav tree')。在('click','上。具有子项>a',函数()


第一个选择器告诉您,在完整的DOM中,找到类
has child
的所有直接子对象,这些子对象的类型为
a
,并在其上绑定单击处理程序

第二个选择器告诉您与上面相同的内容。但是它不搜索完整的DOM,而是只搜索标有
nav tree
class的DOM元素内部


此外,将这样的处理程序绑定到父级允许将事件附加到尚未装入DOM中的元素。

第二个事件具有意味着第二个参数中的给定选择器需要包含在
.nav tree
中。第二次单击被委托给
事件委托允许我们附加单个事件侦听器,指向父元素,将为所有与选择器匹配的子体激发,无论这些子体现在存在还是将来添加。此外,父子关系,还有任何其他区别,谢谢。@guradio谢谢。您的意思是在.nav树上发生了单击,但是对于第一种方式,单击是发生的on.had child->a,我说得对吗?@Guradio,非常感谢你的精彩回答。
 $('.nav-tree').on('click', '.has-child > a', function() {
                $(this).parent().find("ul").slideToggle('fast');
                var classname = $(this).find("i").attr('class');
                $(this).find("i").toggleClass("fa fa-minus-square").toggleClass("fa fa-plus-square");
            });