慕粉18221508921
2016-12-13 21:18
$("#bt1").click(function() {
if (!$("p").length) return;//去重
p = $("p").detach()
});
这个地方,如果( )为true,执行return,是不是就跳出了这个事件,不执行后面的 p = $("p").detach()了吧?( )里false才会绕过return,执行p = $("p").detach()吧?有人有总结么?
$("#bt1").click(function() {
if (!$("p").length) return;//去重
p = $("p").detach()
});
你的这一行代码 if (!$("p").length) return;//去重 中的(!$("p").length)只是判断是否有$("p")这个标签,
所以都会执行下一行的p = $("p").detach()。
首先你的观点是正确的。
然后我按照你的说法总结一下:
if ($("p").length == true ) return;//这里当$("p").length标签存在,则等于true,执行return;
p = $("p").detach();//不会执行这行代码(跳过这个事件)
if ($("p").length == false) return;//这里当$("p").length标签存在,则不等于false,跳过return;
p = $("p").detach();//执行这行代码
这里 if($("p").length == true); 中的 $("p").length 相当于 $("p") 只是判断是否有p标签,不知道你是不是想判断长度...
第二行代码应该是……
第三行的代码应该是检测p是不是存在,如果不存在,就结束,即return,若p存在,再执行第三行的代码。
jQuery基础(二)—DOM篇
114014 学习 · 590 问题
相似问题