2013-01-09 77 views
0

我正在使用同位素集成(http://luis-almeida.github.com/filtrify/)的我的網站的美麗的Filtrify腳本。如何在打開另一個時關閉Filtrify面板?

在我的網站上,我有4個「類別」/面板搜索我的領域。當我打開第一個類別/面板並將鼠標懸停到下一個,並打開它時,第一個仍然打開。在懸停到下一個類別/按鈕打開另一個Filtrify面板時,是否可以使用CSS或Javascript關閉打開的Filtrify面板?現在,如果我全部打開它,它仍然是開放的。舉個例子,在這裏打開「流派」,「主演員」和「導演」:http://luis-almeida.github.com/filtrify/movies.html

真的很感謝你的幫忙!謝謝你的建議!

回答

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)); 
    //... 
}; 
+0

謝謝!對不起,我根本不熟悉javascript,你能幫我把它放在哪裏嗎? – user1580380

+0

@Scipion完美地工作 - 謝謝;) – gpcola

+0

工程就像魅力! –

相關問題