javascript和jQuery动态修改css样式的方法
原文:https://www.cnblogs.com/66-88/articles/6627360.html
/* javascript方法
*javascript动态修改css效果的方法(四种)
* 第一种:使用obj.className来修改样式表的类名。例如:div1.style.width="100px";
* 第二种:使用obj.style.cssText来修改嵌入式的css。例:div1.style.cssText="width:100px;height:100px;background: palevioletred;";
* 第三种:使用obj.className来修改样式表的类名。例如:div1.setAttribute("class","div2")
* 第四种:使用更改外联的css文件,从而改变元素的css。 例如:div1.setAttribute("href","css2.css");
*/
html代码:
<link href="css/css1.css" rel="stylesheet" id="cssLink" /> <div id="divBtn1" onclick="changeCss1()">1</div> <div id="divBtn2" onclick="changeCss2()">2</div> <div id="divBtn3" onclick="changeCss3()">3</div> <div id="divBtn4" onclick="changeCss4()">4</div>
css1.css文件
@charset "utf-8"; #divBtn1,#divBtn2,#divBtn3,#divBtn4{ width:100px; height:100px; margin-bottom: 10px; } #divBtn1{background:yellowgreen;} #divBtn2{background:paleturquoise;} #divBtn3{border:1px solid #ccc} #divBtn4{background:blue;} .div3{width:100px;height:100px;background:blueviolet}
css2.css文件
@charset "utf-8"; #divBtn4{background: greenyellow;} #divBtn1,#divBtn2,#divBtn3,#divBtn4{ width:200px; height:200px; border:1px solid #ccc; margin-bottom: 10px; } #divBtn1{background:yellowgreen;} #divBtn2{background:paleturquoise;} .div3{width:100px;height:100px;background:blueviolet}
js代码:
<script> /* *javascript动态修改css效果的方法(四种) * 第一种:div1.style.width="100px"; * 第二种:div2.style.cssText="width:100px;height:100px;background: palevioletred;"; * 第三种:div1.setAttribute("class","div2")和div3.className="div3";//效果一样 * 第四种:使用更改外联的css文件,从而改变元素的css * obj.setAttribute("href","css/css2.css"); * */ function changeCss1(){ var div1=document.getElementById("divBtn1"); div1.style.width="100px"; div1.style.height="100px"; div1.style.background="red"; } function changeCss2(){ var div2=document.getElementById("divBtn2"); div2.style.cssText="width:100px;height:100px;background: palevioletred;";
//cssText会覆盖之前的设置 无兼容性问题 写法和css样式表相同 } function changeCss3(){ var div3=document.getElementById("divBtn3");
//div3.className="div3";//效果一样 div3.setAttribute("class","div3"); } function changeCss4(){ var obj=document.getElementById("cssLink"); obj.setAttribute("href","css/css2.css"); } </script>
jQuery方法:
css部分:
.div1{ width:100px; height:100px; background:#00ff00; } .div2{ width:100px; height:100px; background:#ff0000; }
#Btndiv{ width:100px; height:100px; border: 1px solid #ccc; margin-bottom: 10px; }
jQuery代码:
<div id="Btndiv" onclick="changeCss()"></div> <script> $(document).ready(function (){
//第一种 // $("div").css("width","100px"); // $("div").css("height","100px"); // $("div").css("background","cyan"); //第二种 // $("div").css({ // width:"100px",height:"100px",background:"red" // }); //第三种 $("div").addClass("div1"); $("div").click(function (){ // $(this).addClass("div2"); // $(this).removeClass("div1"); $(this).toggleClass("div2"); }); }); </script>