javascript - window.matchMedia(mediaQueryString) 是否接受 mediaQueryString 变量?

标签 javascript jquery css function media-queries

为了方便起见,我想构建一个函数来评估并返回各种媒体查询的结果。为此,我编写了以下内容:

//Evaluate Media Query
function eMQ(crit) {
    //Build Media Query From Criteria Parameter
    var lMQ = window.matchMedia(crit);
    //Evaluate and Return Result
    if (lMQ.matches) {
        return true;
    } else {
        return false;
    };
};

我想知道 window.matchMedia(crit) 是否会正确使用 crit 字符串,就好像该字符串是显式写入的一样。

快速编辑:考虑到上面的函数本质上只是带有更多步骤的 window.matchMedia() ,我认为我应该澄清我的目的。我只是发现 window.matchMedia() 很笨拙,并且想要一个较短的版本,不需要在末尾包含 .matches

最佳答案

只要您传递有效的媒体查询字符串,您的函数就应该正常工作,无论是否:

  • 您将该媒体查询从变量发送到 matchMedia
  • 您显式地将硬编码媒体查询字符串发送至 matchMedia

例如:

var crit = "(max-width: 700px)";
var lMQ = window.matchMedia(crit);

将得到与以下相同的结果:

var lMQ = window.matchMedia("(max-width: 700px)");

关于javascript - window.matchMedia(mediaQueryString) 是否接受 mediaQueryString 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61649497/

相关文章:

javascript - 如何使用 jQuery $.post 将 ajax 返回的表单字段发送/发送到服务器

css - 用 Bootstrap 3 css 覆盖 Liferay 的 mui css

html - 如何创建支持跨浏览器的半实心、半透明渐变背景图像?

javascript - 初始化后向 Swipe.JS 添加幻灯片?

javascript - 如何保护 EmberJS 或任何 Javascript MVC 框架?

javascript - Jquery - 替换 HTML 中的特定行

javascript - 使用 jQuery 显示 2 个模态窗口

html - 如何对 bootstrap 3 中的列重新排序?

javascript - 如何使用正确的值在 plotly.js 中制作堆积面积图?

javascript - 如何让 riak-js 返回行走的对象?