我正在为我的社交网络聊天。我正在使用以下代码,它似乎在显示聊天时工作,但不是在隐藏它时。您可以在右下角的http://live-pin.com(“system
”栏)上看到它。
我做得不好?
function toggleChat(obj){
current_margin = $(obj).css('marginBottom');
if (current_margin == 0){
$(obj).animate({marginBottom : "-270px"}).removeClass("active_box").addClass("hidden_box");
}else{
$(obj).animate({marginBottom : "0"}).removeClass("hidden_box").addClass("active_box");
}
}
另外,我遇到了麻烦,因为它显示/隐藏了聊天和聊天。我不希望这种情况发生,并且“新消息”表单不起作用,只是在最后创建的聊天中。作为一个额外的细节,这些框是使用从JSON检索的数据动态创建的,所以我不能使用click()函数或类似物。
<?php echo "
的谢谢! (: "; ?>
答案 0 :(得分:2)
即使你可以设置 marginBottom为0,它内部也是0px,因此current_margin
将是0px
,而不是0
。
但您可能会尝试先解析该值:
function toggleChat(obj) {
var currentMargin = parseInt($(obj).css('margin-bottom'));
if (currentMargin === 0) {
$(obj).animate({ marginBottom: "-270px" })
.removeClass("active_box")
.addClass("hidden_box");
} else {
$(obj).animate({marginBottom : "0px"})
.removeClass("hidden_box")
.addClass("active_box");
}
}