首先对不起,我是一个大初学者,只是在做实验,我用 oembed 制作了一个类似 facebook 的墙。
并且想添加一个喜欢和不喜欢的按钮。
我从点赞按钮开始,它也可以工作,喜欢和不喜欢,cookie 完美地保存了类值。
我的问题是ajax调用,所以实际上当我点击like按钮时,它会覆盖所有锚href val并添加一个类而不是点击什么。
这是我的代码
jQuery
var cookieLike = "like_"
$('a.like').each(function(){
var id = $(this).attr('href'), cookieLiked = cookieLike + id;
switch($.cookies.get(cookieLiked) ) {
case "unliked":
$(this).removeClass('btn-success');
break;
case "liked":
$(this).addClass('btn-success');
break;
}
}).on('click', function(e){
e.preventDefault()
var likeId = $(this).attr('href');
$.ajax({
url: "<?php echo base_url(); ?>stream/like/" + likeId ,
type: "post",
data: likeId,
dataType: "json",
success: function(like)
{
if(like.likeStatus == "unliked") {
$('a.like').attr('href', likeId).removeClass('btn-success');
$.cookies.set(cookieLike + likeId, 'unliked');
}else if(like.likeStatus == "liked") {
$('a.like').attr('href', likeId).addClass('btn-success');
$.cookies.set(cookieLike + likeId, 'liked');
}
}
});
});
html
<div class="stream-bottom">
<a href="#" class=" btn btn-mini comment">Komment</a>
<div class="pull-right like-options">
<a href="<?php echo $sp->sid; ?>" class=" btn btn-mini like"><i class="icon-thumbs-up" title="tetszik"></i> </a>
<a href="<?php echo $sp->sid; ?>" class=" btn btn-mini dislike"><i class="icon-thumbs-down" title="nem tetszik"></i></a>
</div>
</div>
可以请有人指出我缺少什么吗?