2014-02-12 48 views
1

我不太明白enquire.js的「setup」處理程序的意思。Enquire.js:不要達到「setup」處理程序的目的

案例:

我想通過Ajax,當你在一個小視窗不是加載內容一次(LT 600像素)。

當然我會做enquire.register('(min-width: 600px)', { setup: myFunction });

問題:

現在我這個多次,但測試的設置處理程序,當你在一個小屏幕,它完全消除了設置處理程序的好處是國際海事組織也被炒魷魚,因爲你會想只有當你輸入大於600px的視口時才加載ajax內容,不是嗎?

請參閱example jsfiddle

結論:

所以其實我根本不需要安裝處理,因爲我根本就加載打探寄存器之外的內容,並會產生同樣的效果。 (當然這不是我想要的......)

有人可以告訴我,如果我誤解了安裝的目的,或者有什麼我失蹤?

回答

2

deferSetup標誌組合以延遲設置回調,直到第一次匹配。這個例子說明了功能:

enquire.register(someMediaQuery, { 
    setup : function() { 
    console.log("setup"); 
    }, 
    deferSetup : true, 

    match : function() { 
    console.log("match"); 
    }, 

    unmatch : function() { 
    console.log("unmatch"); 
    } 
}); 

這裏你可以看到一個工作示例:http://wicky.nillia.ms/enquire.js/examples/defer-setup/

+0

RTFM正確XD,THX :)。 – Simon

+0

我寫了TFM,所以對我來說記住一些細節更容易;-) – WickyNilliams