使用jQuery更改样式表

时间:2010-01-06 05:46:59

标签: jquery stylesheet

如何在html上使用div标签中的jquery更改样式表?或者更改样式表的jquery代码是什么?

在javascript中,我们使用以下代码:

<script type="text/javascript">
 function changeStyle() {
 document.getElementById('stylesheet').href = 'design4.css';
 }
</script>

有jQuery方式吗?

5 个答案:

答案 0 :(得分:9)

有更好的方法来做你想要的但是如果你真的想删除并添加一个带有jquery的远程样式表,你可以这样做:

$('link[href^=old_css_file.css]').attr('href', '/path_to_new_css/file.css');

详细了解^= attribute selectorattr() function

答案 1 :(得分:1)

要更新完整主题,最好加载新的CSS文件。最容易在服务器端完成,但如果你坚持动态加载:

// Don't know jQuery, this is regular JS:
var newCss = document.createElement('link');

newCss.rel = 'stylesheet';
newCss.type = 'text/css';
newCss.href = '/path/to/new/cssfile.css';

document.body.appendChild(newCss);

答案 2 :(得分:1)

document.getElementById('stylesheet').href = 'design4.css';

使用jQuery:

$("#styleshhet").attr('href', 'design4.css');

答案 3 :(得分:0)

How to load up CSS files using Javascript?

这是类似的,运行良好,使用jquery

加载css

答案 4 :(得分:0)

我使用此代码根据页面启用或禁用样式表。

 $(document).on('pagebeforeshow', function () {
        var URL = $.mobile.path.parseUrl(window.location).toString().toLowerCase();

        if (URL.indexOf("/investment.aspx") > -1 ||
            URL.indexOf("/employees.aspx") > -1) {
            $("link[href^='../../Public/LongLabels.css']").attr("media", "all");
        }
        else {
            $("link[href^='../../Public/LongLabels.css']").attr("media", "not all");
        }
    });