我试图在jquery中重现,当视口大小改变时,Facebook如何隐藏或显示打开的聊天框。基本上,如果你有6个聊天窗口打开,并且如果你调整或缩小你的浏览器,一些聊天窗口被隐藏,如果在视觉上6不能修复屏幕大小。如何隐藏窗口调整大小的Facebook聊天框?
我使用函数$(window).resize()来检测所有打开的窗口的总宽度加上某个边距是否大于窗口宽度,然后隐藏第一个聊天窗口或显示最后一个窗口如果有更多窗口的空间。基本POP或推到协议栈...
我的方法是行不通的,因为每当大小调整运行,我的剧本是不断尝试隐藏或显示窗口。(请参见下面的代码)
任何建议都赞赏。
ChatWidget.isEnoughRoom = function() {
return ($(window).width() > ((ChatWidget.WINDOW_WIDTH * $('.chatWindowWidget:visible').length) + ChatWidget.CONTACTLIST_WIDTH + 100));
};
$(window).resize(function(){
if(!ChatWidget.isEnoughRoom()) {
$('.chatWindow:visible:last').hide() ;
} else {
$('.chatWindow:hidden:last').show() ;
}
})
你能更明确吗?提供代码? – tbem 2013-04-05 11:47:08
Window_Width为240px,contactlist_width为200px。基本上添加所有可见窗口的总宽度加上100px页边距的联系人列表窗口。 – guang 2013-04-05 15:52:52