【问题标题】:Change CSS file by jQuery通过 jQuery 更改 CSS 文件
【发布时间】:2013-04-18 19:55:02
【问题描述】:

我正在尝试使用 .resize() 使用 jQuery 更改页面上的 CSS 文件。

我花了几个小时试图弄清楚,现在我需要帮助。

$(document).ready(function(){
    $(window).resize(function(){
        var w = $(window).width();
        if(w < '640px')
        {
            $('#pcss').attr('href', 'css/pagestyle640.css');
        }
        else if(w > '640px')
        {
            $('#pcss').attr('href', 'css/pagestyle.css');
        }
    });
});

【问题讨论】:

  • jsfiddle 等资源中同时发布 html 和 javascript 通常很有帮助
  • 下次我会的,当我发布这个并看到这个网站有多大帮助时,我有点匆忙,我会回来发布更多 q 可能会回答一些问题,并且肯定会努力让我的 q 更多像样的。

标签: jquery css resize window


【解决方案1】:

请查看jQuery API。 .width 方法返回一个数字。我相信您在这里遇到了将数字与字符串进行比较的问题:

if(w < '640px')

你会更好:

if(w < 640)

【讨论】:

  • 是的,现在完全可以了,太愚蠢了,最小的问题如何让我来回折腾几个小时。
【解决方案2】:

您要使用的是Media Queries。你可以在没有一行 javascript 的情况下完成这一切。

您可以添加如下样式表:

<link rel="stylesheet" media="screen and (max-width: 640px)" />

仅当屏幕小于 640 像素时才会应用此设置。

至于旧版浏览器支持,您可以使用这个 polyfill:https://github.com/scottjehl/Respond 还有一个非常漂亮和简单的演示页面。

【讨论】:

  • 这似乎是最实用的选项,但我想学习如何使用 resize() ,因为我还想实现其他功能。谢谢你,它会让事情变得更简单
  • 我并不是想变得贪婪,但由于您是新来的:如果对您有帮助,请点赞一个答案,因为这是人们写其他答案的良好动力。
  • 在我达到 15 个代表之前我无法投票,我尝试过 15 次后回来投票。
  • @SoonDead - 如果您喜欢 Daphatti 的问题或 cmets,您可以投票赞成,Daphatti 可能会更快获得 15 个代表。
猜你喜欢
  • 1970-01-01
  • 2014-05-02
  • 1970-01-01
  • 2019-12-03
  • 2010-12-29
  • 2019-07-10
  • 1970-01-01
  • 2011-12-10
  • 2014-04-28
相关资源
最近更新 更多