我想在调用函数时延迟几秒钟,这样用户就不会通过快速单击类似按钮来发送垃圾邮件,并且我的 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>