1

这句话可能有什么问题?

$(document).on('click',".post_like",function(e) {
    var postId  = $(this).data('id');
    var postOrigin = $(this).data('originalid');
    var interface_type = 'like';

    alert('test');

    //interact_with_post();
    //e.stopPropagation();
});

当我使用 jquery 2.1.4 时,预计我可以与 ajax 加载的元素进行交互,但我什至不能点击任何元素。

PS:似乎我无法在firefox上使用jquery 1.11.3运行on()(没有检查其他浏览器)。

更新

HTML

<div class="panel-footer" style="background:#444; color:#FFF; border-radius:0 0 8px 8px">
<div class="row">
<div class="col-lg-3 text-center" style="border-right: 1px solid #FFF; width:24%; float: left">
<i class="fa fa-clock-o"></i>
<br>
14 hrs ago
</div>
<div class="col-lg-3 text-center **post_like**" style="width:24% float: left ; border-right: 1px solid #FFF" data-originalid="73" data-id="73">
<i id="like_icon73" class="fa fa-heart-o "> </i>
<br>
<normal id="post_like_count73"> 0</normal>
</div>
<div class="col-lg-3 text-center post_comment" left"="" float:="" style="border-right: 1px solid #FFF; width:24%" data-item="73">
<i class="fa fa-comment"></i>
<br>
0
</div>
<div class="col-lg-3 text-center post_unsave" style="width:24% float: left" data-originalid="73" data-id="73">
</div>
</div>

所以,这背后的想法是,当我正在开发一个社交网络项目时,我正在跟踪帖子周围的事件:

单击某些内容时,我有两个功能:

在这种情况下,当点击类帖子(父类)时,它会运行一个(研究)函数来查看被点击的部分(评论、保存、喜欢、打开模式等)并存储用于研究行为的信息. 同时它运行一个奖励函数(旨在让他们互动) - 这个函数执行此操作:如果用户点击喜欢,则将帖子的点赞数加 1,将类更改为 post_unlike 并更改图标。

一切都像魅力一样使用 on("click", function(){}); 除了我无法跟踪实时点击(如果该类是 post_like ,即使在我将其更改为 post_unlike 后,它仍然表现得像 post_like )。

现在,当我使用 on('click', 'class', function(){}); 运行相同的功能时 我什至在终端上都没有回应。不是在这个,不是在 window.onload 之前的 ajax 加载的帖子上。

当我使用 live() 时,它就像一个魅力。

4

1 回答 1

0

这对我来说运行得很好......(Firefox 38.0.1,Chrome 42.0.2311.152 m,Chrome 43.0.2357.81 m)

$(document).on('click',".post_like",function(e) {
    var postId  = $(this).data('id');
    var postOrigin = $(this).data('originalid');
    var interface_type = 'like';

    alert('test');

    //interact_with_post();
    //e.stopPropagation();
});
<script src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
<div class="post_like">Click Me!</div>

于 2015-05-29T21:35:40.397 回答