【问题标题】:Enable/Disable javascript using Media Query使用媒体查询启用/禁用 javascript
【发布时间】:2013-11-13 04:35:24
【问题描述】:

我有一张幻灯片,我想在其中展示每个设备的特定照片。 iPhone、iPad、台式机。

我想用这样的东西过滤掉每一个。显然 display:none 不会工作,因为它是 JavaScript,但这只是它应该如何工作的一般概念:

<style type="text/css">
@media only screen and (min-width: 800px) {
    #slide-desktop{display:block;}
    #slide-ipad{display:none;}
    #slide-iphone{display:none;}
}
@media only screen and (min-width: 481px) and (max-width: 799px) {
    #slide-desktop{display:none;}
    #slide-ipad{display:block;}
    #slide-iphone{display:none;}
}
@media only screen and (max-width: 480px) {
    #slide-desktop{display:none;}
    #slide-ipad{display:none;}
    #slide-iphone{display:block;}
}
</style>
<div id="slide-desktop">
    <script>
        $.vegas('slideshow', {
        delay:6000,
        backgrounds:[
        { src:'images/slide/desktop.jpg', fade:600 },
        ]
        })('overlay');
    </script>
</div>
<div id="slide-ipad">
    <script>
        $.vegas('slideshow', {
        delay:6000,
        backgrounds:[
        { src:'images/slide/ipad.jpg', fade:600 },
        ]
        })('overlay');
    </script>
</div>
<div id="slide-iphone">
    <script>
        $.vegas('slideshow', {
        delay:6000,
        backgrounds:[
        { src:'images/slide/iphone.jpg', fade:600 },
        ]
        })('overlay');
    </script>
</div>

【问题讨论】:

  • display:none is Javascript 是什么意思?这是一个 CSS 属性。
  • 标题与问题的实际关系如何?

标签: javascript html css


【解决方案1】:

如果您想根据媒体查询运行不同的脚本,您可以使用enquire.js

enquire.js 是一个轻量级的纯 JavaScript 库,用于响应 CSS 媒体查询。

因此,您根本不需要在样式中添加任何内容。

【讨论】:

    【解决方案2】:

    如果你想通过设备宽度检查,你可以使用像这样的简单 javascript

       if(window.innerWidth >= 800)
       {
         alert('desktop?');
       }
       else if(window.innerWidth >= 481 && window.innerWidth < 799)
       {
         alert('ipad?');
       }
       else if(window.innerWidth < 480)
       {
        alert('iphone?');
       }
    

    但我不会采用这种技术。 退房

    What is the best way to detect a mobile device in jQuery?

    【讨论】:

      猜你喜欢
      • 2014-01-11
      • 2021-06-17
      • 1970-01-01
      • 1970-01-01
      • 2015-12-24
      • 2014-01-06
      • 2016-09-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多