需要你的帮助。
我想:
我尝试这样做的方式的演示:
$('div').on( 'click', function() {
if (!$(this).hasClass('active'))
$(this).addClass('active');
// SPAN pressed
$('div.active span').click( function() {
$('div.active').off(); // removing DIV handler
$('div.active').removeClass('active');
});
});
问题:一旦我点击DIV然后再点击其中,我无法再次使用jquery动作点击它,只需在元素中点击一次 < / p>
我是否对处理程序做错了?请告诉我怎么做。
答案 0 :(得分:1)
由于活动类是动态创建的,因此您需要使用委托来绑定click事件
$('document').ready(function () {
$('div').on('click', function () {
if (!$(this).hasClass('active'))
$(this).addClass('active');
});
$(document).on("click", "div.active span", function () {
$(this).parent().removeClass('active');
});
});
答案 1 :(得分:1)
试试这个
$( function() {
$('div').click(function() {
if (!$(this).hasClass('active'))
$(this).addClass('active');
});
// x pressed
$('body').on('click','div.active span', function() {
$(this).parent().removeClass('active');
});
});
<强> DEMO HERE 强>