• JS里的onclick事件


    可以通过以下代码了解JS里的onclick事件:

    <!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>
            #divclass
            {
                cursor:pointer;
            }
            #uiclass
            {
    
            }
            #uiclass li
            {
                display:inline-block;
            }
        </style>
        <script type="text/javascript">
            window.onload = function ()
            {
                document.getElementById("txt").onchange = function ()
                {
                    //alert("我的值改变啦~~~");
                    //事件的方法里面的this:谁调用的方法,方法里的this就是谁
                    alert(this.value);
                };
                //通过文本框调用onchange 那么 onchange里面的this就是文本框
                //  document.getElementById("txt").onchange();
                document.getElementById("selNation").onchange = function ()
                {
                    //下拉框的this.value可以获取到选中的option的value值
                    //var curoptionIndex = this.selectedIndex;
                    //alert(this.childNodes.length);//dom元素的childnodes中包含了所有类型的子节点(html元素节点、文本节点)
                    //alert(this.children.length);//dom元素的children里只包含html元素节点
                    //alert(this.selectedIndex);
                    //alert(this.value+","+this.innerHTML);
    
                    var curOptionIndex = this.selectedIndex;
                    var opts = this.children;
                    var selectOpt = opts[curOptionIndex];
                    alert(selectOpt.innerHTML);
                };
    
                document.getElementById("txtName").onfocus = focus;
                document.getElementById("txtName").onblur = blur;
                document.getElementById("txtPwd").onfocus = focus;
    
                var li = document.getElementsByTagName("li");
                for (var i = 0; i < li.length; i++) {
                    li[i].onclick = doClick;
                }
    
    
            };
    
            function doClick()
            {
                this.style.backgroundColor = "white";
                //选取当前选中li对象的下一个兄弟li对象
                var nextObj = this.nextElementSibling;
                //循环判断是否存在下一个li对象
                while (nextObj)
                {
                    //修改下一个背景颜色
                    nextObj.style.backgroundColor = "red";
                    //再把 下一个的下一个对象找出  如果没有了就返回空
                    nextObj = nextObj.nextElementSibling;
                }
    
                //找出当前选中的li的前一个li,并设置前一个li的背景色
                if (isNaN(this.previousElementSibling))
                {
                    var preObj = this.previousElementSibling;
                    preObj.style.backgroundColor = "blue";
                    preObj = preObj.previousElementSibling;
                }
            }
            function focus()
            {
                document.getElementById("msgBox").innerHTML = this.value;
                alert(this.value);
            }
    
            function blur()
            {
                alert("我走了~~~");
            }
            //为下拉框 绑定onchange事件
           
        </script>
    </head>
    <body>
        <div id="divBox" style="margin:100px auto;">
            <input type="text" value="1" id="txt"/>
            <select id="selNation">
                <option id="1">中国</option>
                <option id="2">美国</option>
                <option id="3">韩国</option>
            </select>
            <input type="text"  id="txtName" value="my i love you~~~~~"/>
            <input type="text" id="txtPwd" value="me too~~~" />
        </div>
        <div id="msgBox"></div>
    
        <div id="divclass">
            <ul id="uiclass">
                <li>aaaaaaaa</li>
                <li>bbbbbbbb</li>
                <li>cccccccc</li>
                <li>dddddddd</li>
            </ul>
        </div>
    </body>
    </html>
  • 相关阅读:
    iOS 苹果开发证书失效的解决方案(Failed to locate or generate matching signing assets)
    iOS NSArray数组过滤
    App Store2016年最新审核规则
    iOS 根据字符串数目,自定义Label等控件的高度
    iOS 证书Bug The identity used to sign the executable is no longer valid 解决方案
    Entity FrameWork 增删查改的本质
    EF容器---代理类对象
    Entity FrameWork 延迟加载本质(二)
    Entity FrameWork 延迟加载的本质(一)
    Entity FrameWork 增删查改
  • 原文地址:https://www.cnblogs.com/miaoying/p/5263306.html
Copyright © 2020-2023  润新知