添加都市,dom成分的创建方法及操作

By admin in 4858美高梅 on 2019年4月8日

利用的连带知识点:对子节点的拉长:document.appendClild()
文件节点的创设:document.createTextNode()
要孟秋点的创导:document.createElement()

在js中假设要成立三个因穷秋点我们常用的是createElement,但要创设文本节点我们可选择createTextNode()
或 createComment()来实例,上边小编来具体介绍。

Attributes 存款和储蓄节点的天性列表(只读)
childNodes 存款和储蓄节点的子节点列表(只读)
dataType 再次来到此节点的数据类型
Definition 以DTD或XML格局给出的节点的概念(只读)
Doctype 钦点文档类型节点(只读)
documentElement 重回文书档案的根成分(可读写)
firstChild 重临当前节点的率先身长节点(只读)
Implementation 返回XMLDOMImplementation对象
lastChild 再次来到当前节点最终贰个子节点(只读)
nextSibling 重临当前节点的下七个兄弟节点(只读)
nodeName 重回节点的名字(只读)
nodeType 重临节点的项目(只读)
nodeTypedValue 存款和储蓄节点值(可读写)
nodeValue 重临节点的文本(可读写)
ownerDocument 重临包蕴此节点的根文书档案(只读)
parentNode 重返父节点(只读)
Parsed 再次来到此节点及其子节点是或不是曾经被分析(只读)
Prefix 再次来到名称空间前缀(只读)
preserve惠特eSpace 钦命是不是保留空白(可读写)
previousSibling 重回此节点的前多少个弟兄节点(只读)
Text 重回此节点及其子孙的文件内容(可读写)
url 再次来到近期载入的XML文书档案的U宝马X三L(只读)
Xml 再次来到节点及其子孙的XML表示(只读)

  1. 带有Element和不带的区分
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script>
            window.onload = function() {
                document.getElementById("btn").onclick = function() {
                    //1.获取ul节点
                    var ulEle = document.getElementById("ulEle");
                    //2、创建文本节点
                    var textNode = document.createTextNode("高松");
                    //3、创建li节点<li></li>
                    var liEle = document.createElement("li");
                    //4、将文本节点添加到li节点中
                    liEle.appendChild(textNode);
                    //5、将李li节点添加至ul节点中
                    ulEle.appendChild(liEle);
                }
            }
        </script>
    </head>
    <body>
        <input type="button" value="添加" id="btn" />
        <ul id="ulEle">
            <li>上海</li><li>新西兰</li><li>东京</li><li>莫斯科</li>
        </ul>
    </body>
</html>

在Javascript中,能够创设各个类型的节点。

方法: 

    a)  带Element的收获的是因商节点

上面列出常用的创造节点的不二秘诀:

appendChild 为当document.write() //动态向页面写入内容
document.createElement_x(Tag) //创建三个html标签对象
document.getElementByIdx_x(ID) //获得钦赐ID值的靶子
document.getElementsByName(Name) //获得钦点Name值的对象
前节点添加三个新的子节点,放在最后的子节点后
cloneNode 重回当前节点的正片
createAttribute 成立新的品质
createCDATASection 创设包含给定数据的CDATA段
createComment 创造二个诠释节点
createDocumentFragment 创建DocumentFragment对象
createElement_x 创造3个因孟秋点
createEntityReference 创建EntityReference对象
createNode 成立给定类型,名字和命名空间的节点
createPorcessingInstruction 成立操作指上巳点
createTextNode 创设包蕴给定数据的公文节点
getElementsByTagName 重返钦命名字的要素集合
添加都市,dom成分的创建方法及操作。hasChildNodes 再次来到当前节点是或不是有子节点
insertBefore 在内定节点前插入子节点
Load 导入钦赐地点的XML文书档案
loadXML 导入内定字符串的XML文书档案
removeChild 从子结点列表中剔除钦命的子节点
replaceChild 从子节点列表中替换钦赐的子节点
Save 把XML文件存到钦点节点
selectNodes 对节点开始展览点名的12分,并回到相称节点列表
selectSingleNode 对节点实行点名的格外,并重返第二个门户大约节点
transformNode 使用钦点的样式表对节点及其子孙实行转换
transformNodeToObject 使用钦点的样式表将节点及其子孙转换为对象

    b)  不带只怕赢得文本节点和品质节点

方法 说明

body-主体子对象 

  1. 收获所以子节点

createElement() 创造1个要九秋点
createTextNode() 创立二个文书节点
createComment() 创立三个文件节点
createDocumentFragment() 创设文书档案碎片节点

document.body //钦定文书档案主体的始发和得了等价于body>/body>
document.body.bgColor //设置或得到对象前边的背景颜色
document.body.link //未点击过的链接颜色
document.body.alink //激活链接(主题在此链接上)的颜色
document.body.vlink //已点击过的链接颜色
document.body.text //文本色
document.body.innerText //设置body>…/body>之间的公文
document.body.innerHTML //设置body>…/body>之间的HTML代码
document.body.topMargin //页面上边距
document.body.leftMargin //页面右侧距
document.body.rightMargin //页面左侧距
document.body.bottomMargin //页面上面距
document.body.background //背景图片

    a)   . childNodes

以上二种办法都以 document 对象的主意。
 
createElement()createElement()用来创设二个要晚秋点,即 nodeType=1的节点。

document.body.appendChild(oTag) //动态生成多个HTML对象

    b)   . children

语法:
    document.createElement(tagName)
个中,tagName 为HTML标签的名目,并将再次来到二个节点指标。

常用对象事件

    c)   . parentNode . children [索引]

例如,成立<div>标签和<p>标签的口舌如下:
 

document.body.onclick=”func()” //鼠标指针单击对象是触发
document.body.onmouseover=”func()” //鼠标指针移到目的时接触
document.body.onmouseout=”func()” //鼠标指针移出对象时接触
———————————————————————
location-地点子对象

  1. . children:获取全体子节点
  2. opacity:0-1;透明度
  3. alpha(opacity:百分数);IE6/7/8透明度
  4. 先绑定事件再实行巡回
  5. previousNode()上三个小兄弟节点
  6. alert(变量名)可测试变量名是不是足以行使
  7. 获取body,var body = document.body;

 代码如下

document.location.hash // #号后的部分
document.location.host // 域名+端口号
document.location.hostname // 域名
document.location.href // 完整URL
document.location.pathname // 目录部分
document.location.port // 端口号
document.location.protocol // 网络协议(http:)
document.location.search // ?号后的一部分

 设置样式的二种方法

复制代码

documeny.location.reload() //刷新网页
document.location.reload(UWranglerL) //打开新的网页
document.location.assign(U劲客L) //打开新的网页
document.location.replace(U陆风X8L) //打开新的网页
———————————————————————
4858美高梅 ,selection-选区子对象
document.selection
———————————————————————

style

  1. 行内式能够获取打字与印刷出来
  2. 内嵌和外链的拿走不了
  3. 体制少的时候利用
  4. 驼峰命名规则
  5. style属性是目的属性
  6. 值是字符串类型,没设置的时候是“空字符串”
  7. .style. cssText = “字符串情势的样式”

    

4858美高梅 14858美高梅 2

  1 <!DOCTYPE html>
  2 <html lang="en">
  3 <head>
  4     <meta charset="UTF-8">
  5     <title>Title</title>
  6     <style>
  7         #list li {
  8             list-style-type: none;
  9             width: 80px;
 10             height: 30px;
 11             line-height: 30px;
 12             background-color:beige;
 13             text-align: center;
 14             float: left;
 15             margin-left: 5px;
 16         }
 17 
 18         #list li.current {
 19             background-color: burlywood;
 20         }
 21 
 22         #list li a {#list li {
 23             list-style-type: none;
 24             width: 80px;
 25             height: 30px;
 26             line-height: 30px;
 27             background-color:beige;
 28             text-align: center;
 29             float: left;
 30             margin-left: 5px;
 31         }
 32 
 33         #list li.current {
 34             background-color: burlywood;
 35         }
 36 
 37         #list li a {
 38             text-decoration: none;
 39         }#list li {
 40             list-style-type: none;
 41             width: 80px;
 42             height: 30px;
 43             line-height: 30px;
 44             background-color:beige;
 45             text-align: center;
 46             float: left;
 47             margin-left: 5px;
 48         }
 49 
 50         #list li.current {
 51             background-color: burlywood;
 52         }
 53 
 54         #list li a {
 55             text-decoration: none;
 56         }#list li {
 57             list-style-type: none;
 58             width: 80px;
 59             height: 30px;
 60             line-height: 30px;
 61             background-color:beige;
 62             text-align: center;
 63             float: left;
 64             margin-left: 5px;
 65         }
 66 
 67         #list li.current {
 68             background-color: burlywood;
 69         }
 70 
 71         #list li a {
 72             text-decoration: none;
 73         }#list li {
 74             list-style-type: none;
 75             width: 80px;
 76             height: 30px;
 77             line-height: 30px;
 78             background-color:beige;
 79             text-align: center;
 80             float: left;
 81             margin-left: 5px;
 82         }
 83 
 84         #list li.current {
 85             background-color: burlywood;
 86         }
 87 
 88         #list li a {
 89             text-decoration: none;
 90         }
 91             text-decoration: none;
 92         }
 93     </style>
 94     <script src="tools.js"></script>
 95     <script>
 96         window.onload = function () {
 97             //需求:点击a链接,让a链接对应的li标签添加类。
 98             //思路:点击a链接,让他的父亲添加类,其他的li标签类名清空。
 99             //步骤:
100             //1.获取事件源
101             //2.绑定事件
102             //3.书写事件驱动程序
103 
104 
105             //1.获取事件源
106             var ul = getEle("list");
107             var aArr = ul.getElementsByTagName("a");
108 
109             for(var i=0;i<aArr.length;i++){
110                 aArr[i].onclick = function () {
111                     //点击哪个a链接,让他的父亲添加类
112                     this.parentNode.className = "current";
113                     //设置他的父元素的其他所有兄弟节点类名为空
114                     var otherArr = getAllSiblings(this.parentNode);
115                     for(var j=0;j<otherArr.length;j++){
116                         otherArr[j].className = "";
117                     }
118                 }
119             }
120 
121 //            //1.获取事件源
122 //            var ul = getEle("list");
123 //            var liArr = ul.children;
124 //            //2.绑定事件
125 //            for(var i=0;i<liArr.length;i++){
126 //                var a = getFirstNode(liArr[i]);
127 //                a.onclick = function () {
128 //                    //3.书写事件驱动程序
129 //                    //排他思想
130 //                    for(var j=0;j<liArr.length;j++){
131 //                        liArr[j].className = "";
132 //                    }
133 //                    this.parentNode.className = "current";
134 //                }
135 //            }
136         }
137     </script>
138 </head>
139 <body>
140 
141     <div id="menu">
142         <ul id="list">
143             <li class="current"><a href="#">首页</a></li>
144             <li><a href="javascript:void(0)">播客</a></li>
145             <li><a href="javascript:void(0)">博客</a></li>
146             <li><a href="javascript:void(0)">相册</a></li>
147             <li><a href="javascript:void(0)">关于</a></li>
148             <li><a href="javascript:void(0)">帮助</a></li>
149         </ul>
150     </div>
151 
152 </body>
153 </html>

菜单的简要练习

 

4858美高梅 34858美高梅 4

  1 <!DOCTYPE html>
  2 <html lang="en">
  3 <head>
  4     <meta charset="UTF-8">
  5     <title>Title</title>
  6     <style>
  7         #list li {
  8             list-style-type: none;
  9             width: 80px;
 10             height: 30px;
 11             line-height: 30px;
 12             background-color:beige;
 13             text-align: center;
 14             float: left;
 15             margin-left: 5px;
 16         }
 17 
 18         #list li.current {
 19             background-color: burlywood;
 20         }
 21 
 22         #list li a {#list li {
 23             list-style-type: none;
 24             width: 80px;
 25             height: 30px;
 26             line-height: 30px;
 27             background-color:beige;
 28             text-align: center;
 29             float: left;
 30             margin-left: 5px;
 31         }
 32 
 33         #list li.current {
 34             background-color: burlywood;
 35         }
 36 
 37         #list li a {
 38             text-decoration: none;
 39         }#list li {
 40             list-style-type: none;
 41             width: 80px;
 42             height: 30px;
 43             line-height: 30px;
 44             background-color:beige;
 45             text-align: center;
 46             float: left;
 47             margin-left: 5px;
 48         }
 49 
 50         #list li.current {
 51             background-color: burlywood;
 52         }
 53 
 54         #list li a {
 55             text-decoration: none;
 56         }#list li {
 57             list-style-type: none;
 58             width: 80px;
 59             height: 30px;
 60             line-height: 30px;
 61             background-color:beige;
 62             text-align: center;
 63             float: left;
 64             margin-left: 5px;
 65         }
 66 
 67         #list li.current {
 68             background-color: burlywood;
 69         }
 70 
 71         #list li a {
 72             text-decoration: none;
 73         }#list li {
 74             list-style-type: none;
 75             width: 80px;
 76             height: 30px;
 77             line-height: 30px;
 78             background-color:beige;
 79             text-align: center;
 80             float: left;
 81             margin-left: 5px;
 82         }
 83 
 84         #list li.current {
 85             background-color: burlywood;
 86         }
 87 
 88         #list li a {
 89             text-decoration: none;
 90         }
 91             text-decoration: none;
 92         }
 93     </style>
 94     <script src="tools.js"></script>
 95     <script>
 96         window.onload = function () {
 97             //需求:点击a链接,让a链接对应的li标签添加类。
 98             //思路:点击a链接,让他的父亲添加类,其他的li标签类名清空。
 99             //步骤:
100             //1.获取事件源
101             //2.绑定事件
102             //3.书写事件驱动程序
103 
104 
105             //1.获取事件源
106             var ul = getEle("list");
107             var aArr = ul.getElementsByTagName("a");
108 
109             for(var i=0;i<aArr.length;i++){
110                 aArr[i].onclick = function () {
111                     //点击哪个a链接,让他的父亲添加类
112                     this.parentNode.className = "current";
113                     //设置他的父元素的其他所有兄弟节点类名为空
114                     var otherArr = getAllSiblings(this.parentNode);
115                     for(var j=0;j<otherArr.length;j++){
116                         otherArr[j].className = "";
117                     }
118                 }
119             }
120 
121 //            //1.获取事件源
122 //            var ul = getEle("list");
123 //            var liArr = ul.children;
124 //            //2.绑定事件
125 //            for(var i=0;i<liArr.length;i++){
126 //                var a = getFirstNode(liArr[i]);
127 //                a.onclick = function () {
128 //                    //3.书写事件驱动程序
129 //                    //排他思想
130 //                    for(var j=0;j<liArr.length;j++){
131 //                        liArr[j].className = "";
132 //                    }
133 //                    this.parentNode.className = "current";
134 //                }
135 //            }
136         }
137     </script>
138 </head>
139 <body>
140 
141     <div id="menu">
142         <ul id="list">
143             <li class="current"><a href="#">首页</a></li>
144             <li><a href="javascript:void(0)">播客</a></li>
145             <li><a href="javascript:void(0)">博客</a></li>
146             <li><a href="javascript:void(0)">相册</a></li>
147             <li><a href="javascript:void(0)">关于</a></li>
148             <li><a href="javascript:void(0)">帮助</a></li>
149         </ul>
150     </div>
151 
152 </body>
153 </html>

style属性的练习

 

4858美高梅 54858美高梅 6

 1 <body>
 2 <div style="width: 100px;height: 100px;background-color: pink;"></div>
 3 <script>
 4 
 5     var div = document.getElementsByTagName("div")[0];
 6     div.onmouseover = function () {
 7         div.style.width = "200px";
 8         div.style.height = "200px";
 9         div.style.backgroundColor = "black";
10         div.style.opacity = "0.2";
11         div.style.filter = "alpha(opacity=20)";
12     }
13 
14 </script>
15 
16 </body>

更改盒子的大大小小和发光度

 

4858美高梅 74858美高梅 8

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title></title>
 6     <style>
 7         input {
 8             display: block;
 9         }
10     </style>
11 </head>
12 <body>
13 <ul>
14     <input type="text"/>
15     <input type="text"/>
16     <input type="text"/>
17     <input type="text"/>
18     <input type="text"/>
19     <button>设置</button>
20 </ul>
21 <script>
22     //需求:点击设置按钮,让所有的input标签获取焦点后高亮显示
23     //步骤:
24     //1.获取事件源
25     //2.绑定事件
26     //3.书写事件驱动程序
27 
28     //1.获取事件源
29     var inpArr = document.getElementsByTagName("input");
30     var button = inpArr[inpArr.length-1].nextElementSibling || inpArr[inpArr.length-1].nextSibling ;
31     //2.绑定事件
32     button.onclick = function () {
33         //3.书写事件驱动程序
34         for(var i=0;i<inpArr.length;i++){
35             //当button按钮被点击以后,所有的input标签被绑定事件,onfocus事件
36             inpArr[i].onfocus = function () {
37                 this.style.border = "2px solid red";
38                 this.style.backgroundColor = "#ccc";
39             }
40             //绑定onblur事件,取消样式
41             inpArr[i].onblur = function () {
42                 this.style.border = "";
43                 this.style.backgroundColor = "";
44             }
45         }
46     }
47 
48 
49 
50 </script>
51 </body>
52 </html>

文本框获取关节高亮彰显

 

4858美高梅 94858美高梅 10

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        * {
            padding: 0;
            margin: 0;
            text-align: center;
        }

        .wrap {
            width: 500px;
            margin: 100px auto 0;
        }

        table {
            border-collapse: collapse;
            border-spacing: 0;
            border: 1px solid #c0c0c0;
            width: 500px;
        }

        th,
        td {
            border: 1px solid #d0d0d0;
            color: #404060;
            padding: 10px;
        }

        th {
            background-color: #09c;
            font: bold 16px "微软雅黑";
            color: #fff;
        }

        td {
            font: 14px "微软雅黑";
        }

        tbody tr {
            background-color: #f0f0f0;
            cursor: pointer;
        }

        .current {
            background-color: red!important;
        }
    </style>
</head>
<body>
    <div class="wrap">
        <table>
            <thead>
                <tr>
                    <th>序号</th>
                    <th>姓名</th>
                    <th>课程</th>
                    <th>成绩</th>
                </tr>
            </thead>
            <tbody id="target">
                <tr>
                    <td>
                        1
                    </td>
                    <td>吕不韦</td>
                    <td>语文</td>
                    <td>100</td>

                </tr>
                <tr>
                    <td>
                        2
                    </td>
                    <td>吕布</td>
                    <td>日语</td>
                    <td>100</td>
                </tr>
                <tr>
                    <td>
                        3
                    </td>
                    <td>吕蒙</td>
                    <td>营销学</td>
                    <td>100</td>
                </tr>
                <tr>
                    <td>
                        4
                    </td>
                    <td>吕尚</td>
                    <td>数学</td>
                    <td>100</td>
                </tr>
                <tr>
                    <td>
                        5
                    </td>
                    <td>吕雉</td>
                    <td>英语</td>
                    <td>100</td>
                </tr>
                <tr>
                    <td>
                        6
                    </td>
                    <td>吕超</td>
                    <td>体育</td>
                    <td>100</td>
                </tr>
            </tbody>
        </table>
    </div>

    <script>
        //需求:让tr各行变色,鼠标放入tr中,高亮显示。

        //1.隔行变色。
        var tbody = document.getElementById("target");
        var trArr = tbody.children;
        //循环判断并各行赋值属性(背景色)
        for(var i=0;i<trArr.length;i++){
            if(i%2!==0){
                trArr[i].style.backgroundColor = "#a3a3a3";
            }else{
                trArr[i].style.backgroundColor = "#ccc";ß
            }

            //鼠标进入高亮显示
            //难点:鼠标移开的时候要回复原始颜色。
            //计数器(进入tr之后,立刻记录颜色,然后移开的时候使用记录好的颜色)
            var color = "";
            trArr[i].onmouseover = function () {
                //赋值颜色之前,先记录颜色
                color = this.style.backgroundColor;
                this.style.backgroundColor = "#fff";
            }
            trArr[i].onmouseout = function () {
                this.style.backgroundColor = color;
            }
        }


    </script>


</body>
</html>

尖端隔行变色

 

4858美高梅 114858美高梅 12

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        * {
            padding: 0;
            margin: 0;
        }
        body {
            background: url(image/1.jpg) no-repeat;
        }
        .box {
            height: 165px;
            padding-top: 35px;
            text-align: center;
            background: rgba(255,255,255,0.3);
        }
        img {
            cursor: pointer;
            margin: 0 10px;
        }
    </style>
</head>
<body>
    <div class="box">
        <img src="image/1.jpg" alt="4858美高梅 13" width="200px"/>
        <img src="image/2.jpg" alt="4858美高梅 14" width="200px"/>
        <img src="image/3.jpg" alt="4858美高梅 15" width="200px"/>
        <img src="image/4.jpg" alt="4858美高梅 16" width="200px"/>
        <img src="image/5.jpg" alt="4858美高梅 17" width="200px"/>
    </div>

    <script>
        //需求:点击图片,body的背景图修改。
        //步骤:
        //1.获取事件源
        //2.绑定事件
        //3.书写事件驱动程序

        //1.获取事件源
        var box = document.getElementsByTagName("div")[0];
        //body的获取js内部帮我们优化完毕
        var body = document.body;
        var imgArr = box.children;
        //2.绑定事件
        for(var i=0;i<imgArr.length;i++){
            imgArr[i].index = i;
            imgArr[i].onclick = function () {
                //3.书写事件驱动程序
                //改body的背景
//                body.style.backgroundImage = "url(image/"+(this.index+1)+".jpg)";
                body.style.backgroundImage = "url("+this.src+")";
            }
        }
    </script>

</body>
</html>

百度皮肤

 

4858美高梅 184858美高梅 19

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title></title>
 6     <style>
 7         * {
 8             padding: 0;
 9             margin: 0;
10         }
11         body {
12             background: url(image/1.jpg) no-repeat;
13         }
14         .box {
15             height: 165px;
16             padding-top: 35px;
17             text-align: center;
18             background: rgba(255,255,255,0.3);
19         }
20         img {
21             cursor: pointer;
22             margin: 0 10px;
23         }
24     </style>
25 </head>
26 <body>
27     <div class="box">
28         <img src="image/1.jpg" alt="4858美高梅 20" width="200px"/>
29         <img src="image/2.jpg" alt="4858美高梅 21" width="200px"/>
30         <img src="image/3.jpg" alt="4858美高梅 22" width="200px"/>
31         <img src="image/4.jpg" alt="4858美高梅 23" width="200px"/>
32         <img src="image/5.jpg" alt="4858美高梅 24" width="200px"/>
33     </div>
34 
35     <script>
36         //需求:点击图片,body的背景图修改。
37         //步骤:
38         //1.获取事件源
39         //2.绑定事件
40         //3.书写事件驱动程序
41 
42         //1.获取事件源
43         var box = document.getElementsByTagName("div")[0];
44         //body的获取js内部帮我们优化完毕
45         var body = document.body;
46         var imgArr = box.children;
47         //2.绑定事件
48         for(var i=0;i<imgArr.length;i++){
49             imgArr[i].index = i;
50             imgArr[i].onclick = function () {
51                 //3.书写事件驱动程序
52                 //改body的背景
53 //                body.style.backgroundImage = "url(image/"+(this.index+1)+".jpg)";
54                 body.style.backgroundImage = "url("+this.src+")";
55             }
56         }
57     </script>
58 
59 </body>
60 </html>

隐身盒子的方法

 

4858美高梅 254858美高梅 26

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title></title>
 6     <style>
 7         div {
 8             margin-top: 20px;
 9             width: 200px;
10             height: 200px;
11             background-color: red;
12             position: absolute;
13             top: 100px;
14             left: 10px;
15             z-index: 1;
16         }
17         img {
18             position: absolute;
19             top: 100px;
20             left: 10px;
21         }
22     </style>
23 </head>
24 <body>
25     <button>进化吧,皮卡丘!!!</button>
26     <div></div>
27     <img src="image/mm.png" alt="4858美高梅 27" width="200px"/>
28 
29     <script>
30         //需求:点击按钮,让盒子和图片同事移开,并且,图片压住盒子.
31         var btn = document.getElementsByTagName("button")[0];
32         var div = document.getElementsByTagName("div")[0];
33         var img = document.getElementsByTagName("img")[0];
34 
35         //绑定事件
36         btn.onclick = function () {
37             div.style.top = "300px";
38             div.style.left = "300px";
39 
40             img.style.top = "300px";
41             img.style.left = "300px";
42             img.style.zIndex = "2";
43         }
44     </script>
45 
46 </body>
47 </html>

定点和层级

 

var ele_div=document.createElement(“div”);
var ele_p=document.createElement(“p”);createTextNode()createTextNode()

images集合(页面中的图象)

dom成分的始建方法

  1.documrnt.write(“<li></li>”)

      A)  script写在那就创制在这

      B)  会被掩盖

  2.parentNode.innerHTML +=
“<li></li>”

  3.已有节点.appendChild(创设的节点);充实新节点到已有节点的末段面

var ul = document.getElementsByTagName(‘ul’)[0];        
 //获取已有成分
var li = document.createElement(‘li’);
                           //创立1个li标签
var liText = document.createTextNode(‘作者是二个LI标签’);
//创立一个文件节点
ul.appendChild(li);                                                  
 //把li标签追加到ul最末尾
li.appendChild(liText);                                
           //把文本节点追加到li标签中

  4.已有节点.insertBefore(创制的节点,已有节点的子节点节点);在已有节点的子节点此前创制一个新的节点

var ul = document.getElementsByTagName(‘ul’)[0];
                //获取已有成分
var li = document.createElement(‘li’);
                             //创立2个li标签
var liText = document.createTextNode(‘小编是1个LI标签’);  
//成立二个文件节点
li.appendChild(liText);                                              
//把文本节点追加到li标签中
var list = document.getElementsByTagName(‘li’)[2];    
//获取ul的二个子节点
ul.insertBefore(li,list); 
                                         //添加在list标签在此之前

  5.删除   父节点.removeChild(要删减的子节点);

A)  var ul = document.getElementsByTagName(‘ul’)[0];    
 //获取已有成分
var li = document.createElement(‘li’);                          
 //创设1个li标签
var liText = document.createTextNode(‘作者是二个LI标签’);
//创立三个文本节点
var list = document.getElementsByTagName(‘li’)[2];    
//获取ul的二个子节点
ul.removeChild(list);
                                              //删除ul里的list节点

list.parentNode.removeChild(list);                      
//现照到list的父成分,在拓展删减,能够不定义父成分

  6.替换 
父节点.replaceChild(新节点,老节点);

A)  var ul = document.getElementsByTagName(‘ul’)[0];    
//制造一个文件节点
var li = document.createElement(‘li’);
                           //成立三个li标签
var liText = document.createTextNode(‘笔者是3个LI标签’);
//成立一个文件节点
li.appendChild(liText);                                              
 //把文本节点追加到li标签中
var list = document.getElementsByTagName(‘li’)[2]; //replaceChild
替换节点
ul.replaceChild(liText,list);
                                     //liText替换叼list

  7.克隆  var 变量 =
被克隆的节点.cloneNode(true); 
(要是true改为false,那么将仿制贰个空节点)

var newNode = li.cloneNode(true);            
 //克隆一个li节点给变量newNode

ul.appendChild (newNode);                        
//将克隆的节点添加到ul之后

    

4858美高梅 284858美高梅 29

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title></title>
 6 </head>
 7 <body>
 8 <button>创建</button>
 9 <ul>
10     aaaaa
11 </ul>
12 <script>
13     //第一种创建方式:document.write();
14     document.write("<li>我是document.write创建的</li>");
15 
16     var btn = document.getElementsByTagName("button")[0];
17     var ul = document.getElementsByTagName("ul")[0];
18 //    btn.onclick = function () {
19 //        document.write("<li>我是document.write创建的</li>");
20 //    }
21 
22     //第二种:直接利用元素的innerHTNL方法。(innerText方法不识别标签)
23     ul.innerHTML += "<li id='li1'>我是innerHTML创建的</li>";
24 
25 
26     //第三种:利用dom的api创建元素
27     var newLi = document.createElement("li");
28     newLi.innerHTML = "我是createElement创建的";
29 //    console.log(newLi);
30     //在父元素的最后面添加元素。
31 //    ul.appendChild(newLi);
32     //指定位置添加
33     var li1 = document.getElementById("li1");
34     ul.insertBefore(newLi,li1);
35 
36 
37 </script>
38 
39 
40 </body>
41 </html>

dom成分的创造

 

4858美高梅 304858美高梅 31

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title></title>
 6 </head>
 7 <body>
 8 <ul>
 9     <li id="li1">我是参照标签</li>
10 </ul>
11 
12 <script>
13     //document.write();不常用,因为容易覆盖原来的页面。
14     //innerHTML;用的比较多。绑定属性和内容比较方便。(节点套节点)
15     //document.createElement;也是比较多的,指定数量的时候一般用它。
16 
17     var ul = document.getElementsByTagName("ul")[0];
18     var li1 = document.getElementById("li1");
19 
20     //创建,添加,删除,替换
21     var li2 = document.createElement("li");
22     li2.innerText = "我是createElement创建的标签,用的是appendChild的方法添加的";
23     ul.appendChild(li2);
24     //用insertBefore添加
25     var li3 = document.createElement("li");
26     li3.innerText = "我是createElement创建的标签,用的是insertBefore的方法添加的"
27     //父节点.insertBefore(新节点,参照节点);
28     ul.insertBefore(li3,li1);
29 
30 
31     //删除,替换
32     ul.removeChild(li3);
33     //父节点.replaceChild(newNode,oldNode);
34     ul.replaceChild(li3,li2);
35 
36     //克隆node.cloneNode(true);深层复制。
37     for(var i=0;i<=3;i++){
38         var newLi = li3.cloneNode(true);
39         ul.appendChild(newLi);
40     }
41 
42 
43 </script>
44 </body>
45 </html>

要素的操作

 

4858美高梅 324858美高梅 33

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        li {
            cursor: pointer;
        }
    </style>
</head>
<body>
    <button>创建列表</button>
    <ul></ul>

    <script>
        //需求:点击列表,添加四大名人,然后鼠标放到谁上面,谁高亮显示。
        //思路:创建一个数组,添加内容。利用for循环穿件li标签在添加内容,高亮显示。
        //步骤:(指定多少个元素的创建最好用for循环)
        //老三步
        var btn = document.getElementsByTagName("button")[0];
        //获取相关元素并定义内容
        var arr = ["黑崎一护","乌尔奇奥拉","冰轮丸","名侦探柯南"];
        var ul = document.getElementsByTagName("ul")[0];
        btn.onclick = function () {
//            ul.innerHTML = "";
            for(var i=0;i<arr.length;i++){
                //创建li元素
                var newLi = document.createElement("li");
               newLi.innerHTML += "<li>"+arr[i]+"</li>";
                //添加到ul中
                ul.appendChild(newLi);
            }
            //获取所有的li标签然后,为他绑定事件,排他思想,高亮显示
            var liArr = ul.children;
            //为所有的li绑定事件
            for(var i=0;i<liArr.length;i++){
                liArr[i].onmouseover = function () {
                    //排他思想,高亮显示
                    for(var j=0;j<liArr.length;j++){
                        liArr[j].style.backgroundColor = "";
                    }
                    this.style.backgroundColor = "red";
                }
            }
        }


    </script>


</body>
</html>

开创列表,高亮展现

 

4858美高梅 344858美高梅 35

  1 <!DOCTYPE html>
  2 <html>
  3 <head lang="en">
  4     <meta charset="UTF-8">
  5     <title></title>
  6     <style>
  7         body {
  8             margin: 0 auto;
  9             padding: 0px;
 10             font-size: 12px;
 11             background: url(image/bg.gif) repeat center 36px;
 12             text-align: center;
 13             background-color: #c30230;
 14         }
 15         #content {
 16             margin: 0 auto;
 17             width: 960px;
 18             background: url(image/content_bg.jpg) no-repeat left top;
 19             height: 627px;
 20             position: relative;
 21         }
 22 
 23         #content .tip1, #content .tip2, #content .tip3, #content .tip4, #content .tip5, #content .tip6, #content .tip7, #content .tip8 {
 24             position: absolute;
 25             width: 227px;
 26             left: 200px;
 27             top: 100px;
 28         }
 29 
 30         #content .tip1 .tip_h {
 31             background: url(image/tip1_h.gif) no-repeat left top;
 32         }
 33 
 34         #content .tip1 .tip_h, #content .tip2 .tip_h, #content .tip3 .tip_h, #content .tip4 .tip_h, #content .tip5 .tip_h, #content .tip6 .tip_h, #content .tip7 .tip_h, #content .tip8 .tip_h {
 35             width: 227px;
 36             padding-top: 45px;
 37             height: 23px;
 38             text-align: left;
 39             cursor: move;
 40         }
 41         #content .tip1 .tip_c {
 42             background: url(image/tip1_c.gif) repeat-y;
 43         }
 44 
 45         #content .tip1 .tip_c, #content .tip2 .tip_c, #content .tip3 .tip_c, #content .tip4 .tip_c, #content .tip5 .tip_c, #content .tip6 .tip_c, #content .tip7 .tip_c, #content .tip8 .tip_c {
 46             width: 200px;
 47             padding-left: 12px;
 48             padding-right: 15px;
 49             min-height: 40px;
 50             text-align: left;
 51             line-height: 20px;
 52             max-height: 160px;
 53             word-wrap: break-word;
 54             word-break: break-all;
 55             overflow: hidden;
 56         }
 57 
 58         #content .tip1 .tip_f {
 59             background: url(image/tip1_f.gif) no-repeat left top;
 60         }
 61 
 62         #content .tip1 .tip_f, #content .tip2 .tip_f, #content .tip3 .tip_f, #content .tip4 .tip_f, #content .tip5 .tip_f, #content .tip6 .tip_f, #content .tip7 .tip_f, #content .tip8 .tip_f {
 63             width: 227px;
 64             height: 53px;
 65             padding-top: 20px;
 66         }
 67         #content .close, #content .close2 {
 68             float: left;
 69             font-size: 12px;
 70             cursor: pointer;
 71             color: #000000;
 72         }
 73         .clr {
 74             clear: both;
 75             overflow: auto;
 76             display: block;
 77             height: 0px;
 78         }
 79         #content .icon {
 80             float: left;
 81             width: 35px;
 82             padding-left: 15px;
 83             height: 35px;
 84             text-align: center;
 85         }
 86         #content .name {
 87             float: right;
 88             padding-right: 15px;
 89             text-align: right;
 90             font-size: 14px;
 91             line-height: 35px;
 92             color: #C0F;
 93         }
 94         #content .num {
 95             float: left;
 96             padding-left: 7px;
 97             width: 195px;
 98         }
 99     </style>
100 </head>
101 <body>
102 <!--纸条墙-->
103 <div id="content">
104     <!--纸条-->
105     <div class="tip1" id="tip" >
106         <div class="tip_h" title="双击关闭纸条">
107             <div class="num">第[49568]条 2016-07-7 22:51:52</div>
108             <div class="close" title="关闭纸条" >×</div>
109             <div class="clr"></div>
110         </div>
111         <div class="tip_c">
112             普天同庆,天下大同!
113         </div>
114         <div class="tip_f">
115             <div class="icon">
116                 <img src="image/bpic_1.gif" alt="4858美高梅 36" title="">
117             </div>
118             <div class="name">不愿意透露姓名的吕先生</div>
119             <div class="clr"></div>
120         </div>
121     </div>
122 </div>
123 
124 <script>
125     //需求:克隆盒子,然后随机位置,点击纸条的时候压住其他的纸条。
126     //思路:获取纸条,克隆,随机数值绑定到纸条上,添加到父盒子中,然后绑定事件层级最高。
127     //步骤:
128     //1.获取纸条,克隆
129     //2.随机数值绑定到纸条上
130     //3.添加到父盒子中
131     //4.然后绑定事件层级最高
132 
133     //0.创建多张纸条
134     for(var i=1;i<=10;i++){
135         //1.获取纸条,克隆
136         var tip = document.getElementById("tip");
137         var content = document.getElementById("content");
138         var newTip = tip.cloneNode(true);
139         //问题:id问题。
140         newTip.id = newTip.id+i;
141         //2.随机数值绑定到纸条上(top不要超过400,left不要超过700)
142         var topValue = parseInt(Math.random()*400);//(取值是0-1,那么乘以400,取值就是0-400)
143         var leftValue = parseInt(Math.random()*700);//小数取整
144         newTip.style.top = topValue+"px";
145         newTip.style.left = leftValue+"px";
146         //3.添加到父盒子中
147         content.appendChild(newTip);
148 
149         //4.然后绑定事件层级最高
150         newTip.onclick = fn;
151     }
152     //tip本身有问题,没有绑定事件。(1.删除。   2.在绑定一次)
153     tip.onclick = fn;
154 //    tip.parentNode.removeChild(tip);
155     //获取所有类名叫做的tip1标签,然后绑定事件。
156     var index = 1;
157     function fn() {
158         //计数器
159         this.style.zIndex = index;
160         index++;
161     }
162 
163      
164     // 点击关闭 隐藏盒子
165 
166     var close = document.getElementsByClassName("close");
167     for (i=0;i<close.length;i++) {
168         close[i].onclick = function () {
169             this.parentNode.parentNode.style.display = "none";
170         }
171     }
172 
173 </script>
174 
175 
176 
177 </body>
178 </html>

祝愿墙

 

4858美高梅 374858美高梅 38

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title></title>
 6     <style>
 7         select {
 8             width: 180px;
 9             height: 240px;
10             font-size: 16px;
11             background-color: #7dff51;
12         }
13     </style>
14     <script>
15         window.onload = function () {
16             //需求:点击>>>左边的所有选项全部进入右边,
17                  //点击<<<右边的所有选项全部进入左边。
18             //思路:获取所有的子元素,然后直接添加到另一侧。
19 
20             //获取相关元素
21             var sel1 = document.getElementById("sel1");
22             var sel2 = document.getElementById("sel2");
23             var btnArr = document.getElementsByTagName("button");
24 
25             //绑定事件
26             btnArr[0].onclick = function () {
27                 //获取左侧的select标签的所有子元素
28                 var arr = sel1.children;
29                 //遍历添加到右侧(随着左侧标签内元素的减少,数组的长度也会减少,那么)
30                 for(var i=arr.length-1;i>=0;i--){
31                     //push()是操作数组的。要往一个标签中添加元素,要用appendChild();
32                     //而往另外一个标签中添加元素原来的数组长度容易变化,为了防止跳出循环,我们使用反向遍历数组
33                     sel2.appendChild(arr[arr.length-1-i]);
34                 }
35             }
36 
37            btnArr[1].onclick = function () {
38                //获取左侧的select标签的所有子元素
39                var arr = sel2.children;
40                //遍历添加到右侧(随着左侧标签内元素的减少,数组的长度也会减少,那么)
41                for(var i=arr.length-1;i>=0;i--){
42                    //push()是操作数组的。要往一个标签中添加元素,要用appendChild();
43                    //而往另外一个标签中添加元素原来的数组长度容易变化,为了防止跳出循环,我们使用反向遍历数组
44                    sel1.appendChild(arr[arr.length-1-i]);
45                }
46            }
47 
48                btnArr[2].onclick = function () {
49                 var arr = sel1.children;
50                 sel2.appendChild(arr[arr.length-1]);
51             };
52             btnArr[3].onclick = function () {
53                 var arr = sel2.children;
54                 sel1.appendChild(arr[arr.length-1]);
55             }
56 
57 
58         }
59     </script>
60 </head>
61 <body>
62 <!--   multiple -->
63     <select name="" size="10" id="sel1" multiple>
64         <option value="">香蕉</option>
65         <option value="">苹果</option>
66         <option value="">鸭梨</option>
67         <option value="">葡萄</option>
68     </select>
69     <button>>>></button>
70     <button><<<</button>
71     <button>></button>
72     <button><</button>
73     <select name="" size="10" id="sel2" multiple>
74 
75     </select>
76 </body>
77 </html>

接纳水果

 

用来成立多个诠释节点,即 nodeType=八 的节点。

a)通过集合引用
document.images //对应页面上的img标签
document.images.length //对应页面上img标签的个数
document.images[0] //第1个img标签
document.images[i] //第i-1个img标签

语法:

b)通过nane属性直接引用
img name=”oImage”
document.images.oImage //document.images.name属性

    document.createComment(comment)

c)引用图片的src属性
document.images.oImage.src //document.images.name属性.src

里面,comment 为注释的始末,并将重返2个节点指标。

d)创建七个图象
var oImage
oImage = new Image()
document.images.oImage.src=”1.jpg”
并且在页面上创造二个img /标签与之对应就能够来得

譬如,创造3个表明节点,内容为“ 那是3个注脚节点 ”:
 

———————————————————————-

 代码如下

forms集合(页面中的表单) 

复制代码

a)通过汇聚引用
document.forms //对应页面上的form标签
document.forms.length //对应页面上/formform标签的个数
document.forms[0] //第1个/formform标签
document.forms[i] //第i-1个/formform标签
document.forms[i].length //第i-三个/formform中的控件数
document.forms[i].elements[j] //第i-1个/formform中第j-1个控件

var ele_comment=document.createComment(” 那是三个声明节点 “);
createDocumentFragment()createDocumentFragment()

b)通过标签name属性直接引用
/formform name=”Myform”>input name=”myctrl”/>/form
document.Myform.myctrl //document.表单名.控件名

用来创建文书档案碎片节点。

c)访问表单的个性
document.forms[i].name //对应form name>属性
document.forms[i].action //对应/formform action>属性
document.forms[i].encoding //对应/formform enctype>属性
document.forms[i].target //对应/formform target>属性

文书档案碎片节点是多少DOM节点的聚集,能够包蕴各连串型的节点,如
元商节点、文本节点、注释节点
等。文书档案碎片节点在创建之初是空的,须要向它添加节点。

document.forms[i].appendChild(oTag) //动态插入多个控件
document.all.oDiv //引用图层oDiv
document.all.oDiv.style.display=” //图层设置为可视
document.all.oDiv.style.display=”none” //图层设置为隐匿
document.getElementId(”oDiv”) //通过getElementId引用对象
document.getElementId(”oDiv”).style=”
document.getElementId(”oDiv”).display=”none”

语法:

图层对象的四个天性
document.getElementByIdx_x(”ID”).innerText //动态输出文本
document.getElementByIdx_x(”ID”).innerHTML //动态输出HTML
document.getElementByIdx_x(”ID”).outerText //同innerText
document.getElementByIdx_x(”ID”).outerHTML //同innerHTML

document.createDocumentFragment();

document属性作为window对象的二个子对象被创制,是用来访问页面中具有因素的靶子。其利害攸关持有以下部分使用性子:

譬如说,成立1个文档碎片节点,并将它赋值给变量:

 

 代码如下

referrer 指定referral URL.
title 标题文字
URL 指定文档的URL
vlinkColor 指定相关标签的vlink属性
属性/方法/事件 描述
onClick 当文档被点击时触发
onDblClick 当文档被双击时触发
onKeyDown 当按下任意键时触发。优先于onKeyPress事件触发器
onKeyPress 参见onKeyDown
onKeyUp 当释放按下的键时触发
onMouseDown 当按下鼠标键时触发
onMouseUp 当释放鼠标键时触发
captureEvents() 捕获所有与文档相关的事件
close() 关闭文档流
getSelection() 返回当前选中的文本
handleEvent() 调用事件处理器给指定的事件
open() 打开文档流
releaseEvents() 释放所捕获的事件
routeEvent() 通过正常的处理程序来传递所捕获的事件
write() 向文档中写入内容
writeln() 在文档中写入带有换行符的字符串
alinkColor 指定相关标签的alink属性
anchors 包含了文档中所有anchor标签的数组
bgColor 指定相关标签的背景颜色。
cookie 指定cookie
domain 指定服务于文档的域
embeds 包含了文档中所有embed标签的数组
fgColor 指定相关标签的text属性
formName 文档中每个form的实际名称
forms 包含了文档中所有form标签的数组
images 包含了文档中所有image标签的数组
lastModified 指定文档最后更改的日期
layers 包含了文档中layer的所有标签的数组
linkColor 指定相关标签的link属性
links 包含了文档中所有links的数组
plugins 包含了文档中所有plug-in的数组

复制代码

 
var ele_fragment=document.createDocumentFragment();

能够行使document.createTextNode()成立新文本节点,这些艺术接受二个参数——要插入节点中的文本。与安装已有文件节点的值壹样,作为参数的文件也将遵从HTML或XML的格式进行编码:

 代码如下

复制代码

var textNode =
document.createTextNode(“<strong>Hello</strong> world!”);

在创设新文本节点的还要,也会为其安装ownerDocument属性。可是,除非把新节点添加到文书档案树中,不然大家不会在浏览器窗口中看到新节点。上边包车型客车代码会制造叁个<div>成分并向个中添加一条音讯:

 代码如下

复制代码

var element = document.createElement(“div”);
element.className = “message”;
var textNode = document.createTextNode(“Hello world!”);
element.appendChild(textNode);
document.body.appendChild(element);

本条例子成立了三个新<div>成分并为它钦命了值为“message”的class性子。然后,再次创下立了贰个文件节点,并将其添加到前面创制的要素中。最终一步,正是将以此因素添加到了文书档案中的<body>元素中,那样能够在浏览器中看出新创造的因素和文件节点了。

①般景观下,每种成分唯有二个文本子节点。不过,在少数景况下也大概带有多少个文本子节点,如上面包车型地铁例证所示:

 代码如下

复制代码

var element = document.createElement(“div”);
element.className = “message”;
var textNode = document.createTextNode(“Hello world!”);
element.appendChild(textNode);
var anotherTextNode = document.createTextNode(“Yippee!”);
element.appendChild(anotherTextNode);
document.body.appendChild(element);

若果多个文件节点是周边的亲生节点,那么那多个节点中的文本就会连起来展现,中间不会有空格

)
或createComment()来实例,上面小编来具体介绍…

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 美高梅手机版4858 版权所有