在前面的文章裡介紹了 - 如何添加/移除CSS類,那種方法需要先定義好CSS類,然後針對"類"來改變某個元素的樣式。本文要介紹的是另外一種改變CSS樣式的方法 - 直接添加樣式法。使用CSS樣式一般有兩種方法:一種是在Head裡引用外部定義了CSS樣式的檔案;另一種是直接在HTML元素裡內建樣式。如何添加/移除CSS類一文裡介紹的方法通常需要把CSS類定義在外部CSS樣式檔案裡;而本文介紹的方法就類似於嵌入式CSS。
jQuery提供css()
的方法來實現嵌入式改變元素樣式,css()
方法在使用上具有多樣性。其中一種接受兩個輸入參數:樣式屬性和樣式值,它們之間用逗號分開。比如我們要改變連結顏色,我們可以使用下面的代碼:
$("#61dh a").css('color','#123456');
//這裡選取器‘$("#61dh a")’表示ID為‘#61dh’的元素下的所有連結。
//.css(‘color’,'#123456');表示把顏色設為'#123456'
如果我們需要改變多個樣式屬性,我們可以先定義屬性變數,然後直接賦值給css()
方法。樣本如下:
var divcss = {
background: '#EEE',
width: '478px',
margin: '10px 0 0',
padding: '5px 10px',
border: '1px solid #CCC'
};
$("#result").css(divcss);
//這裡我們先定義了一個CSS樣式屬性變數‘divcss’,這類似於建立一個外部CSS檔案。
//然後通過jQuery提供的css()方法,把屬性賦給ID為'#result'的DIV。
另外jQuery提供的css()
方法還可以用來查看某個元素的css屬性值。例如,我們想查看連結的顏色,可以使用下面的代碼:
$("#61dh a").css("color")
//和第一個例子相似,但是這裡我們只傳遞一個參數(樣式屬性)
最後要介紹的是如何設定滑鼠划過後的連結樣式(比如: 顏色)。我們無法使用選取器直接選擇滑鼠划過狀態下的連結,也就是說$("a:hover")
是不成立的。因此我們需要用到jQuery提供的事件類別方法 -hover()
。值得注意的是,hover()
方法需要定義兩個函數,一個是滑鼠划過時;另一個是滑鼠划過後。具體方法如下:
$("#61dh a").css('color','#123456');
$("#61dh a").hover(function(){
$(this).css('color','#999');
},
function(){
$(this).css('color','#123456');
});
//hover()方法的兩個函數使用用逗號分隔