2010-01-06 64 views
4

如何在html中使用div標籤中的jquery更改樣式表?或者什麼是更改樣式表的jQuery代碼?使用jQuery更改樣式表

在JavaScript

,我們用下面的代碼:

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

是否有一個jQuery的方法?

+3

使用技術術語將幫助我們大多數人更好地理解您的問題。 – mauris 2010-01-06 05:49:55

回答

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); 
1
document.getElementById('stylesheet').href = 'design4.css'; 

使用jQuery:

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

有更好的方法做你問什麼,但如果你真的想與jQuery的刪除和添加遠程樣式表,你可以這樣做:

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

閱讀更多關於^= attribute selectorattr() function

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"); 
     } 
    });