javascript和jQuery动态修改css样式的方法

/*  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>

 

posted @ 2017-03-27 16:24  爽朗琴天  阅读(37325)  评论(0编辑  收藏  举报