return false的问题
来源:2-3 为搜索框添加功能--事件代理和显示隐藏下拉层
夜魇丶
2019-11-09 16:21:34
$input.on('focus', function() {
$layer.show();
}).on('click', function() {
return false;
});
$(document).on('click', function() {
$layer.hide();
})
input标签绑定了focus事件,失去焦点,触发显示下拉层。当点击document时候,隐藏下拉层。
所以在input标签又加了一个点击事件,当我点击input标签时,因为事件冒泡,input点击事件和document点击事件同时被触发,return false直接结束了这个function,阻止了事件冒泡。
如果这么理解的话还挺明白的…但是为什么一定要return false 。return true不可以么,return的话应该就直接结束这个方法了。那么直接return;跳出这个方法,理论上也是可以的吧。
麻烦老师讲一下return false具体用法是什么。
1回答
同学你好,return true和return并不能阻止事件冒泡。
return false会阻止事件冒泡也会阻止默认事件。这就是一个规定的语法。同学记住就可以了。
如果我的回答帮到了你,欢迎采纳,祝学习愉快~
相似问题
回答 9
回答 9