今天是正二八经的胡说八道之DOM。

9 篇文章 0 订阅

今天讲的是DOM。 真的是
Mouse事件
Onmouseover:鼠标放在该区域上。
Onmouseout:鼠标离开该区域。
Onclick:script上发生鼠标点击触发。
Ondbclick:双击触发。
Onmouseup:松开元素。
Onmousedown:按下元素。
Onmousemove:鼠标在元素上动时都会触发改元素。
Parentnode childnode.
Parentnode:获取对象(父元素)。
Nodename:获取元素名字
Nodetype: 元素节点1,属性节点2,文本节点3。
Nodevalue:h 获取节点值。
找子元素。
Firstchild:
获取第一个子元素。

<body>
        <ul id="a1">
            <<li title="第一段文字">第一个</li>
            <li title="第二段文字">第二个</li>
        </ul>
        <script type="text/javascript">
        /*获取子节点时,要注意父节点与子节点之间的换行,把换行当作子节点*/
        var arr = document.getElementById("a1");
        /*获取任意一个节点,childNodes[]得到的是子节点组成的数组,下标为第几个元素*/
        alert(arr.parentNode);
        alert(arr.childNodes[1]);
        </script>
</body>
<li/> <ul/> <body/>都是元素节点。里面的文本是他的子节点,文本节点。
<li/>和其中的文本存在父子关系。即<li/>父节点,“第一个”是文本节点。

Nodevalue 在文本节点中输出的就是文本内容。
获取属性节点

alert(document.getElementById("a1").getAttributeNode("id").nodeValue);
 var p = document.getElementsByTagName("div");
 /*取到页面上所有的div标签*/
for(var i = 0;i < p.length;i++){     
alert(document.getElementsByTagName("div")[0].childNodes[1].firstChild.nodeValue);
}

通过class来查找

        <p class="a1">我是p</p>
        <div class="a1">
            我是div1
        </div>
        <div class="a1">
            我是div2
        </div>
        <div class="a1">
            我是div3
        </div>
        <hr />
        <script type="text/javascript">
            var arrs = document.getElementsByClassName("a1");
            var text = "";
            for (var i = 0;i < arrs.length;i ++) {
                text += arrs[i].innerHTML;
            }
            document.write(text);//这里没在方法里就可在构建页面时进行write,不会覆盖。
        </script>

添加一个span的方法

var span = document.createElement("span"); /*创建一个span*/
            var text = document.createTextNode("我是span");/*创建一个文本节点*/
            span.appendChild(text);/*给span中添加文本节点*/
            var parent = document.getElementById("a1");
            parent.getAttribute("id");
            a1.appendChild(span);/*给div中添加span*/    

Insertbefore

var ndiv = document.createElement("div");
var nt = document.createTextNode("我是新的div");
ndiv.appendChild(nt);
var father = document.getElementById("a1");
father.insertBefore(ndiv,document.getElementById("a2"));
/*a.insertbefore(b,c)
* a:找到父劫点
* b:信号到要超入得文本
* c:插入的位置
*/


// replacechild() 替换

var replace = document.createElement("div");
var text2 = document.createTextNode("我是替换上去的额");
var child = document.getElementById("a2");
replace.appendChild(text2);
/*parent.removeChild(child);*/
/*child.parentNode.remove(child);*/
parent.replaceChild(replace,document.getElementById("a3"));
/*A.Repalcechild(B.C);    用B替换C
A:父节点。
B:新节点。
C:老节点。*/

属性节点(更改与获取)

var div = document.getElementById("d");
div.setAttribute("title","我是div");
alert(div.getAttribute("id"));
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值