JS 对于属性的操作、对内容的操作、定时器
一、JS对于属性的操作
对象.setAttribute('属性名','值'); - 添加属性
对象.getAttribute('属性名'); - 获取属性值,如无此属性,那么返回null
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <style type="text/css">
        .div1 {
            width: 100px;
            height: 50px;
            float: left;
            margin-right: 10px;
        }
    </style>
</head>
<body>
    <div class="div1" dd="1"></div>
    <div class="div1" dd="1"></div>
    <div class="div1" dd="0"></div>
    <div class="div1" dd="0"></div>
    <div class="div1"></div>
    <div class="div1"></div>
</body>
</html>
<script type="text/javascript">
    var aa = document.getElementsByClassName("div1");
    for (var i = 0; i < aa.length; i++) {
        if (aa[i].getAttribute("dd") == "1")
            aa[i].style.backgroundColor = "green";
        else if (aa[i].getAttribute("dd") == "0")
            aa[i].style.backgroundColor = "yellow";
        else
            aa[i].style.backgroundColor = "red";
    }
</script>
对象.removeAttribute('属性名'); - 移除属性
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
</head>
<body>
    <input type="button" value="按钮1" id="dd1" />
    <input type="button" value="按钮2" id="dd2" />
</body>
</html>
<script type="text/javascript">
    var aaa = document.getElementById("dd1");
    var bbb = document.getElementById("dd2");
    //按钮1的点击事件
    aaa.onclick = function () {
        //按钮1添加一个属性不可用
        this.setAttribute("disabled", "disabled");
        //获取aaa中属性value的值
        var ccc = this.getAttribute("value");
        alert(ccc);
    }
    //bbb的点击事件
    bbb.onclick = function () {
        //移除aaa的disabled属性
        aaa.removeAttribute("disabled");
    }
</script>
2.验证5+5=?
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
</head>
<body>
    5+5=
    <input type="text" id="dd1" data="10" />
     <input type="button" id="dd2" value="验证"/>
</body>
</html>
<script type="text/javascript">
    var aaa = document.getElementById("dd1");
    var bbb = document.getElementById("dd2");
        //bbb的点击事件
    bbb.onclick = function () {
        var txt = aaa.getAttribute("data");
       
        if (txt == aaa.value)
            alert("正确");
        else
            alert("笨蛋");
    }
</script>
3.彩虹导航栏,移入变为灰色,移除变为原来的颜色。
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <style type="text/css">
        .div1 {
            width: 100px;
            height: 50px;
            float: left;
            margin-right: 10px;
        }
    </style>
</head>
<body>
    <div class="div1" style="">" dd="red"></div>
    <div class="div1" style="">" dd="blue"></div>
    <div class="div1" style="">" dd="green"></div>
    <div class="div1" style="">" dd="pink"></div>
    <div class="div1" style="">" dd="purple"></div>
    <div class="div1" style="">" dd="yellow"></div>
</body>
</html>
<script type="text/javascript">
    var aaa = document.getElementsByClassName("div1");
    //中间变量存颜色
    var color;
    for (var i = 0; i < aaa.length; i++) {
        //鼠标移入事件
        aaa[i].onmouseover = function () {
            color = this.style.backgroundColor;
          
            this.style.backgroundColor = "gray";
        }
        //鼠标移除事件
        aaa[i].onmouseout = function () {
            this.style.backgroundColor = color;
        }
        //鼠标点击事件
    }
</script>
二、操作内容
1、赋值添加操作:(1)、普通元素.innerText="值";---以文本形式执行,不会执行其中代码;
(2)、普通元素.innerHTML=“值”;---可识别编程语句,并执行其中代码
(3)表单元素:表单元素.value="值" 或直接添加属性(setAttribute)
2、取值:(1)变量名=普通元素.innerText;----以文本形式取出其中所有文本代码
(2)变量名=普通元素.innerHTML;---只取出其中文本,不会代码
(3)表单元素:变量名=表单元素.value
例:
 <style type="text/css">
        #div1 {
            width: 200px;
            height: 200px;
            background-color: green;
        }
        .div2 {
            width: 100px;
            height: 100px;
            background-color: red;
        }
    </style>
</head>
<body>
    <div id="div1"></div>
</body>
</html>
<script>
    var nav1 = document.getElementById("div1");
    nav1.onclick = function () {
        this.innerHTML = "<div class='div2'>这是内容</div>";
    }
    nav1.onmouseover = function () {
        this.innerText = "<span>这也是内容</span>";
    }
</script>
三、操作相关元素:
(1)同辈操作:1、变量名.nextSibling--找变量的下一个同辈元素,注意空格回车换行(如果有两个空格则再加一个.nextSibling)
2、变量名.previousSibling--找变量的上一个同辈元素,注意包含空格回车换行(如果有两个空格则再加一个.previousSibling)
(2)父辈级操作:1、变量名.parentNode--找变量的上一级父级元素
2、变量名.childNodes---找变量的下一级子元素,找出的是数组
3、变量名.firstChild---找第一个子级元素 lastChild---找最后以个子级元素,childNodes[i]---找第i个子级元素
4、alert(nodes[i]instanceof Text);--判断是不是文本,返回true/false
定时器:
window.setTimeout(function(){},间隔时间毫秒); 延迟执行,只执行一次(相当于我们生活中的定时炸弹只是执行一次)
window.setInterval(function(){},间隔的时间毫秒); - 无限循环,每一次循环有间隔时间,一般不要小于20毫秒 - 它是有返回值的,可以用一个变量来接收这个定时器对象
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <style type="text/css"> #btn1 { position: absolute; left:500px; } </style> </head> <body> <input type="button" value="按钮" id="btn1" /> </body> </html> <script type="text/javascript"> var oBtn1 = document.getElementById('btn1'); oBtn1.onclick = function () { var timer = window.setInterval(function () { if (oBtn1.offsetLeft < 0) { window.clearInterval(timer); } oBtn1.style.left = oBtn1.offsetLeft - 10 + 'px'; }, 20); }
说明:当点击按钮的时候,按钮会你每隔0.02会从右向左移动10px;知道它距离左边的距离小于零时停止,要是想让它从左到右,只要让它的offsetLift的值加10px,还必须设置它的宽度用他的.offsetWidthwindow.clearInterval(要关闭的定时器对象); 一旦执行这句代码,会立刻停止此定时器对象的执行
 
                     
                    
                 
                    
                 

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号