jQuery操作元素css樣式的三種方法
更新時間:2014年06月04日 15:11:47 作者:
jQuery里提供三種方法來改變頁面元素的樣式,雖然它們和傳統(tǒng)方法的思想相通,但是卻節(jié)省了許多代碼
我們常常要使用Javascript來改變頁面元素的樣式。其中一種辦法是改變頁面元素的CSS類(Class),這在傳統(tǒng)的Javascript里,我們通常是通過處理HTML Dom的classname特性來實現(xiàn)的;而jQuery里提供三種方法來實現(xiàn)這個功能,雖然它們和傳統(tǒng)方法的思想相通,但是卻節(jié)省了許多代碼。還是那句話 - “jQuery讓JavaScript代碼變得簡潔!”
1. addClass() - 添加CSS類
$("#target").addClass("newClass");
//#target 指的是需要添加樣式的元素的ID
//newClass 指的是CSS類的名稱
2. removeClass() - 移除CSS類
$("#target").removeClass("oldClass");
//#target 指的是需要移除CSS類的元素的ID
//oldClass 指的是CSS類的名稱
3. toggleClass() - 添加或者移除CSS類:如果CSS類已經(jīng)存在,它將被移除;相反,如果CSS類不存在,它將被加上。
$("#target").toggleClass("newClass")
//如果ID為“target”的元素已經(jīng)定義了CSS樣式,它將被移除;
//反之,CSS類”newClass“將被賦給該ID。
在實際運用中,我們常常先定義好這些CSS類,然后通過Javascript事件觸發(fā)(比如點擊某個鏈接)來改變頁面元素樣式。此外,jQuery還提供一種方法 hasClass("className")用來判斷某個元素是否已經(jīng)被賦予某個CSS類。
下面是一個完整的例子。
<!DOCTYPE HTML>
<head>
<title>圖片閃爍</title>
<style type="text/css">
@-webkit-keyframes twinkling{ /*透明度由0到1*/
0%{
opacity:0; /*透明度為0*/
}
100%{
opacity:1; /*透明度為1*/
}
}
.up{
-webkit-animation: twinkling 1s infinite ease-in-out;
}
</style>
</head>
<body>
<div id="soccer" class="up">
哈哈
</div>
<br/>
<input type="button" onclick='btnClick()'>
<script src="./jQuery/jquery-1.8.3.js" type="text/javascript"></script>
<script>
function btnClick(){
//$("#soccer").removeClass("up");
$("#soccer").toggleClass("up");
//$("p:first").removeClass("intro");
}
</script>
</body>
</html>
1. addClass() - 添加CSS類
$("#target").addClass("newClass");
//#target 指的是需要添加樣式的元素的ID
//newClass 指的是CSS類的名稱
2. removeClass() - 移除CSS類
$("#target").removeClass("oldClass");
//#target 指的是需要移除CSS類的元素的ID
//oldClass 指的是CSS類的名稱
3. toggleClass() - 添加或者移除CSS類:如果CSS類已經(jīng)存在,它將被移除;相反,如果CSS類不存在,它將被加上。
$("#target").toggleClass("newClass")
//如果ID為“target”的元素已經(jīng)定義了CSS樣式,它將被移除;
//反之,CSS類”newClass“將被賦給該ID。
在實際運用中,我們常常先定義好這些CSS類,然后通過Javascript事件觸發(fā)(比如點擊某個鏈接)來改變頁面元素樣式。此外,jQuery還提供一種方法 hasClass("className")用來判斷某個元素是否已經(jīng)被賦予某個CSS類。
下面是一個完整的例子。
復(fù)制代碼 代碼如下:
<!DOCTYPE HTML>
<head>
<title>圖片閃爍</title>
<style type="text/css">
@-webkit-keyframes twinkling{ /*透明度由0到1*/
0%{
opacity:0; /*透明度為0*/
}
100%{
opacity:1; /*透明度為1*/
}
}
.up{
-webkit-animation: twinkling 1s infinite ease-in-out;
}
</style>
</head>
<body>
<div id="soccer" class="up">
哈哈
</div>
<br/>
<input type="button" onclick='btnClick()'>
<script src="./jQuery/jquery-1.8.3.js" type="text/javascript"></script>
<script>
function btnClick(){
//$("#soccer").removeClass("up");
$("#soccer").toggleClass("up");
//$("p:first").removeClass("intro");
}
</script>
</body>
</html>
相關(guān)文章
jQuery插件jQuery-JSONP開發(fā)ajax調(diào)用使用注意事項
jQuery-JSONP是一個支持 JSONP 調(diào)用的 jQuery 插件,使用它是因為它支持出錯時的 ajax 回調(diào),而 jQuery 的 $.ajax 不支持,我們已經(jīng)在實際項目中使用,在開始使用時遇到了2個問題,在這里記錄并分享一下。2013-11-11jQuery實現(xiàn)的浮動層div瀏覽器居中顯示效果
這篇文章主要介紹了jQuery實現(xiàn)的浮動層div瀏覽器居中顯示效果,涉及jQuery及JS動態(tài)操作頁面元素與屬性相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2017-02-02fancybox1.3.1 基于Jquery的插件在IE中圖片顯示問題
JQuery的彈出窗口插件也很多了,例如Lightbox…這個我們介紹比較優(yōu)秀的Plugin – Fancybox。2010-10-10Jquery 數(shù)據(jù)選擇插件Pickerbox使用介紹
目前市面上很少見或幾乎沒有這數(shù)據(jù)(對象)選擇插件.比如,點擊input , select 元素時彈出div(窗口),載入數(shù)據(jù)讓用戶選擇數(shù)據(jù),選擇后在填充回對應(yīng)的元素.2012-08-08jQuery Validate 驗證,校驗規(guī)則寫在控件中的具體實例
本篇文章主要是對jQuery Validate 驗證,校驗規(guī)則寫在控件中的具體實例進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02jQuery 浮動導(dǎo)航菜單適合購物商品類型的網(wǎng)站
頁面長度較大,需要方便快速的在頁面的不同位置進行定位,所以浮動菜單逐漸流行了起來,下面是jQuery浮動導(dǎo)航菜單適合購物網(wǎng)站商品類型2014-09-09