我不太确定这是否是正确的表达方式,但这里是 my problem
如您所见,非常简单的代码:
<div class="first"></div>
<div></div>
我想实现的是:
- 您单击具有第一个 类的
div
,它会将该类与同级元素交换 - 您单击同级元素,它会将其换回,因此您只需围绕 2 个元素交换类
这里的问题是它只有第一次正确工作,第二次当新元素通过 addClass
接收类时,jQuery 无法识别它包含第一页的类加载?我该如何解决这个问题?
P.S: 我制作了一个 console.log(111);
只是为了确保,并且确实只有当我点击第一个之后的黑色 div
时它才会触发交换(不应该再有 first 类的那个)
最佳答案
要实现此行为,您可以使用委托(delegate)事件 http://api.jquery.com/delegate/在元素包装器上;
$(document).delegate('.first', 'click', function(e){
e.preventDefault();
console.log(123);
$(this).removeClass('first');
$(this).siblings().addClass('first');
})
关于javascript - 如何从 JavaScript/jQuery 重新呈现页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39420611/