我目前正在使用Isotope集成的网站中美丽的Filtrify脚本(http://luis-almeida.github.com/filtrify/)。
在我的网站上,我有4个“类别”/小组用于搜索我的-field。当我打开第一个类别/面板并将鼠标悬停在下一个类别/面板上并打开它时,第一个仍然打开。使用CSS或Javascript,当将鼠标悬停在下一个类别/按钮上以打开另一个Filtrify面板时,是否可以关闭已打开的Filtrify面板?如果我打开它们,现在它仍然是开放的。例如,在这里打开“流派”,“主要演员”和“导演”:http://luis-almeida.github.com/filtrify/movies.html
真的很感谢你的帮助!谢谢你的建议!
答案 0 :(得分:3)
我不太了解库,但您可以在打开另一个面板之前尝试关闭面板的兄弟姐妹。
该方法的第一个近似值可能是:
Filtrify.prototype.closeSiblingsPanel = function ( f ) {
for(var item in this._menu){
if(item !== f && this._menu[item].panel){
this._menu[item].panel.addClass("ft-hidden");
this._menu[item].label.removeClass("ft-opened");
}
}
};
您还必须修改click事件处理程序:
Filtrify.prototype.events = function ( f ) {
//...
this._menu[f].label.on("click", this._bind(function(event){
this.openPanel( f );
this.closeSiblingsPanel( f );
this.bringToFront( f );
event.stopPropagation();
}, this) );
//...
};