javascript - 我更改了类的元素上的火灾事件

标签 javascript jquery

如果我做错了,我很抱歉。这是我第一次在这里问一些事情。 我也为我糟糕的英语感到抱歉。

听着,我有麻烦了。我只为我和我的 friend 创建一个迷你社交网络。 我对 jQuery/Ajax 很陌生,所以他们说我的页面太静态,他们必须做的任何事情,页面都会刷新,这太糟糕了。然后我决定学习一些“动态”的东西,但我开始遇到一些问题。

所以,我有一个“类似”(哈哈)按钮,我想创建一个“类似(撤消)”按钮。

我会尝试模拟我的问题:

<a class="like">Like</a>
$('.like').click(function(){
     //Like in database
     $(this).html('Like(Undo)');
     $(this).removeClass('like');
     $(this).addClass('like-undo');
});

因此,当我单击时,它将触发“like”集体操作,而不是“like-undo”。 谁能帮我?我已经快死了。

如果我做错了一次,我很抱歉。

最佳答案

事件处理程序绑定(bind)到元素。当您更改元素的类时,不会更改绑定(bind)到该元素的处理程序。幸运的是,对于这种情况,如果使用 event delegation 就可以获得这种行为。 :

$('some-common-container').on('click', '.like', function() {
    //...
});

$('some-common-container').on('click', '.like-undo', function() {
    //...
});

关于javascript - 我更改了类的元素上的火灾事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22948745/

相关文章:

javascript - 我怎样才能让这个js应用程序使用一个 "on click event"而不是四个来运行?

javascript - 在 Gridview 中查找按钮并从代码隐藏中单击它(c#)

javascript - 无法在node js中使用post请求

javascript - hero.service.ts Angular v5 英雄之旅教程中箭头函数 (_=>) 前面的下划线是什么?

javascript - 旋转后获取相对的 x 和 y div

javascript - 单击禁用功能,其他功能有效吗?

javascript - parseInt() 导致 javascript 函数的返回值是预期结果的 0.77 倍,基数指定为十进制

javascript - 如何在 React Native 中使用变量 'document'?

javascript - 如何将 td 文本与单元格可见部分的顶部对齐?

javascript - 成功提示消息不适用于 AJAX