0

是否可以根据您所在的“url”引入特定于 id 的样式或加载不同的 css 文件?

像这样的东西:

<script>
 if(location.href == 'http://jpftest2.tumblr.com/about'){ 
document.write('<style type='text/css'>
.social {
  display:none;
}

</style>'); 
} 

</script> 

所以当用户离开根 url 到“/about”页面时。我想介绍一下风格:

   .social {
  display:none;
}

如果还可以根据 URL 完全加载不同的 CSS 文件会更好吗?

tumblr 上的不同页面共享相同的头部,所以我不能在不同的页面上引入不同的 css

4

2 回答 2

2

假设您的网站使用 AJAX 之类的东西(正确吗?),(否则您会将样式表放在<head>文件的 HTML 中),您可以这样做:

window.onpopstate = function() {
    if(window.location.path == '/about'){ 
        var css = document.createElement('style');
        css.type = 'text/css';
        css.rel = 'stylesheet';
        css.innerHTML = '.social{display:none;}';
        document.getElementsByTagName('head')[0].appendChild(css);
    }
} 

但是我不会推荐它。

于 2012-10-31T05:20:58.497 回答
1

您可以使用以下方法

<script type="text/javascript">
    $(document).ready(function(){

    if(your_url_condition){
            //for IE compatibility
            if (document.createStyleSheet){
                document.createStyleSheet('style.css');
            }
            else {
                $("head").append($("<link rel='stylesheet' href='style.css' type='text/css' media='screen' />"));
            }
        }
    });
</script>

这将起作用并且可能对您有所帮助。

问候!

于 2012-10-31T05:25:54.610 回答