我正在更改点击的类别class2
&我想触发class2
而不是class1
的事件。我知道我可以手动检查新课程&然后触发()它。还有其他办法吗?
在这里小提琴:http://jsfiddle.net/usXa3/
HTML:
<a href="#" class="class1">Click me!</a>
我有Jquery:
$('.class1').on('click', function(){
console.log("class1 clicked");
$(this).removeClass('class1').addClass('class2');
$(this).off('click');
//Do something here to fire class2 event.
});
$(document).on('click', 'class2', function(){
console.log("class2 clicked");
});
我的解决方案 - 寻找替代方案:
$('.class1').on('click', function(){
var thisClass = $(this).attr('class');
if(thisClass == "class1");
{
$(this).removeClass('class1').addClass('class2');
}
else if(thisClass == "class2")
{
$(".class2").trigger( "click" );
}
});
答案 0 :(得分:1)
使用one()之类的,
$('.class1').one('click', function(){
alert("class1 clicked");
$(this).toggleClass('class1 class2');
//Do something here to fire class2 event.
$('.class2').on('click', function(){
alert("class2 clicked");
});
});
答案 1 :(得分:1)
尝试DEMO
$('.class1').on('click', function () {
console.log("class1 clicked");
$(this).toggleClass('class1 class2');
$(this).off('click').on('click', function () {
console.log("class2 clicked");
});
});