我知道这是一个老问题,但我已经搜索了很多。我想删除类后,点击了类似的机构以外。这里是我的代码:
HTML
<div id="user-login-top">Enter</div>
<div id="user-login-wrapper" class="">visible</div>
J查询
$(function () {
$("#user-login-top").on("click", function () {
$("#user-login-wrapper").addClass("wide");
});
$(document).on("click", function (e) {
if ($(e.target).is("#user-login-wrapper") === false) {
$("#user-login-wrapper").removeClass("wide");
}
});
});
这是小提琴Fiddle
感谢你的帮助!?
谢谢
2条答案
按热度按时间o2gm4chl1#
这是因为事件的传播。
当您单击
user-login-top
时,第一个单击处理程序被触发,它添加类,然后由于事件传播,附加到文档的处理程序被触发,它满足if条件并删除类。这里的一个可能的解决方案是使用event.stopPropagation()
另一个是
一个一个三个一个一个一个一个一个四个一个一个一个一个一个五个一个
nx7onnlm2#