首先,我想強調一下,我在javascript編程方面是一個新手,並且盡力從這裏學習。閱讀查詢js api,文檔以及源代碼。我想知道查詢js和傳統的使用matchmedia和resize事件監聽器之間有什麼區別。matchmedia和inquire js之間的區別
鏈接查詢JS:http://wicky.nillia.ms/enquire.js/
會
首先,我想強調一下,我在javascript編程方面是一個新手,並且盡力從這裏學習。閱讀查詢js api,文檔以及源代碼。我想知道查詢js和傳統的使用matchmedia和resize事件監聽器之間有什麼區別。matchmedia和inquire js之間的區別
鏈接查詢JS:http://wicky.nillia.ms/enquire.js/
會
諮詢筆者在這裏感謝所有貢獻:)我偶爾會留意問關於它的SO問題,所以我可以提供幫助。
沒有什麼區別,查詢是在上匹配媒體。因此,一個更相關的問題可能是「查詢提供的是否超出matchMedia API?」
查詢,它最基本的是matchMedia API的簡單包裝。它的目標是消除您不斷使用matchMedia編寫的樣板代碼(它本身並不是一個非常好的API)。它還爲處理媒體查詢提供了更多的完整生命週期:設置(可以選擇延遲),匹配,不匹配,銷燬。你必須自己處理所有這些,而無需查詢。此外,它簡化了註銷媒體查詢,併爲舊版瀏覽器提供陷阱門,其中shouldDegrade
換句話說,查詢是一個很好的地方,它使用JS中的MQ進行相當先進的工作。否則,您可以使用原始匹配媒體API - 我絕對推薦使用簡單的東西。如果你沿着這條路線走,絕對不要使用調整大小的事件,因爲你必須將邏輯放入去抖動事件等等,它變得複雜快速!相反,使用瀏覽器的原生MediaQueryList.addListener:
matchMedia("screen and (min-width:40em)").addListener(function(mql) {
if(mql.matches) {
// do something when matching
}
else {
// do soemthing when no match
}
});
。希望清除的東西了你
是,幫助的感謝!很好的方式來查詢 –