gpt4 book ai didi

javascript - matchmedia和inquire js的区别

转载 作者:行者123 更新时间:2023-12-04 00:58:10 25 4
gpt4 key购买 nike

首先,我想强调一下,我是 javascript 编程的新手,我正在努力从这里学习尽可能多的东西。阅读查询 js api、文档以及源代码。我想知道 inquire js 和常规使用 matchmedia 和 resize 事件监听器有什么区别。

查询js链接:http://wicky.nillia.ms/enquire.js/

感谢任何贡献

最佳答案

在这里询问作者 :) 我偶尔会关注关于它的问题,所以我可以提供帮助。

没有任何区别,inquire 是 matchMedia 之上构建的。因此,一个更相关的问题可能是“inquire 在 matchMedia API 之外提供了什么?”

查询,最基本的是对 matchMedia API 的简单包装。它的目标是消除您经常使用 matchMedia 编写的样板代码(它本身并不是一个非常好的 API)。它还为处理媒体查询提供了更多的完整生命周期:设置(可以选择延迟)、匹配、取消匹配、销毁。你必须自己处理所有这些,而不需要询问。此外,它还简化了注销媒体查询并为旧版浏览器提供了一个陷阱门,使用 shouldDegrade

换句话说,inquire 在您使用 JS 中的 MQ 做相当高级的事情时非常有用。否则,您可以只使用原始的 matchMedia 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
}
});

希望这能帮您解决问题

关于javascript - matchmedia和inquire js的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19261761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com