我的on()失败但click()被执行的原因是什么?

Joh*_*kij -2 javascript jquery

我有这个click()功能的代码,它的工作原理:

$(document).ready( function() {
  $('.rate .fa-star').click( function() {
    alert('Clicked!');
  });
});
Run Code Online (Sandbox Code Playgroud)

但是这个带有该on()功能的代码不起作用,我不知道为什么

$(document).ready( function() {
  $('body').on('click', '.rate .fa-star', function() {
    alert('Clicked!');
  });             
});
Run Code Online (Sandbox Code Playgroud)

知道可能是什么问题吗?在控制台中,我根本没有看到任何错误.

更新:

我在其他地方有这行代码,当我评论它的on()作品时:

$(".rate i.fa-star").click(function(e) { e.stopPropagation(); });

问题是,我需要这一行来获取我网站上的其他功能.所以,任何想法如何on()使用这样的代码行像click()现在正在工作?

Krz*_*ski 5

我认为某些函数必须阻止此click事件冒泡到body元素.

也许在这个元素和之间的某个地方有一些return falseevent.stopPropagation()某些事件处理程序body.

我在我的网站上检查了你的代码,它就像一个魅力.