1

我想在调用函数时延迟几秒钟,这样用户就不会通过快速单击类似按钮来发送垃圾邮件,并且我的 ajax 调用在后台成功执行。

这样做的原因:(因为我正在对 ajax 文件中的这个点击进行计算。所以如果用户快速点击,它会干扰计数。)

点击按钮后效果:点赞按钮变为不喜欢按钮

这是我的 Jquery 代码:

<script type="text/javascript">
function like(post_id,post_user_id,user_id)
{
    var last_msg_id         = $('.load_more').attr("id");
        $.post('ajax_files/like.php', {post_id:post_id,post_user_id:post_user_id,user_id:user_id},
        function(data) 
        {
            $("#extra_small_loader_"+post_id).empty().html('<img src="images/extra_small_loader.gif">');            




            if(last_msg_id!='end')
            {
                $.ajax({
                    type: "POST",
                    url: "ajax_files/maintain_posts.php",
                    data: "lastmsg="+ last_msg_id, 
                    beforeSend:  function() 
                        {
                        $('a.load_more').html('<img src="load_more_script/loading.gif" />');

                        },
                    success: function(html)
                        {
                        $("#reload_posts").html(html);
                        }
                });
            }



        });
}
</script>

这是我的LIKE按钮 HTML:

<a href="javascript:void(0);" onclick="like(<?php echo $ps->id; ?>,<?php echo $ps->user_id; ?>,<?php echo $user_id; ?>)">

  <span class="Icon_Text_Font">Like</span>

</a>

这是我的UNLIKE按钮代码:

<a href="javascript:void(0);" onclick="unlike(<?php echo $ps->id; ?>,<?php echo $ps->user_id; ?>,<?php echo $user_id; ?>)">

  <span class="Icon_Text_Font">Unlike</span>

</a>
4

1 回答 1

1

您是否尝试使用 setTimeout()

例如。

setTimeout(function() { functionName() },5000);
于 2013-09-10T05:08:52.550 回答