Javascript中insertBefore的语句

     说起来汗颜,用了很久JS,基础的DOM方法都不熟悉,哎,不说了,努力学习吧。

     今天晚上做了个关于insertBefore方法DEMO,功能很简单,页面上有几个P标签,一个下拉列表显示P的个数,然后一个按钮负责在制定P标签前插入一段文字。

     DEMO编程思路是这样的,一共3个function:init()负责初始化和事件绑定,getPnum()负责动态获得P标签的个数并填充到下拉列表中,addP()是主要功能实现。
     我的代码如下:
Code
<script type="text/javascript">
window.onload
=init;
function init(){
    getPnum();
    document.getElementById(
"addP").onclick=function(){ addP()};
}

function getPnum(){
    
var Pnum=document.getElementsByTagName("p").length;
    
for(i=0;i<Pnum;i++)
    {
        document.getElementById(
"PNum").options[i]=new Option(i+1,i+1);
    }
}

function addP(){
    
var thePindex=document.getElementById("PNum").selectedIndex;
    
var allP=document.getElementsByTagName("p");
    
var insertOB=allP.item(thePindex);
    
var newP=document.createElement("p");
    
var newText=document.createTextNode("这是在:" + new Date()+"插入的文本元素!");
    newP.appendChild(newText);
    document.getElementById(
"modifiable").insertBefore(newP,insertOB);
}

</script>

      经过几次调试,终于实现了功能,也对insertBefor有了深入的了解。

insertBefor的用法:

      oElement = object . insertBefore ( oNewNode , oChildNode )

      在指定元素前插入元素或者文本,这需要在调用insertBefore的时候传2个参数,第一个参数oNewNode 是要插入的元素,第二个参数oChildNode 是坐标元素,比如有ABCD四个元素,需要将一段文本插入到B的前面,那么参数二就是B。需注意的是这个时候oElement 必须是坐标函数的父级元素

     oChildNode 是个可选参数,如果不填的话,为了保证该JS在火狐下的兼容性,应该传个null进去。

     关于insertBefor语句就写这么多了:)

转载于:https://www.cnblogs.com/sunjing/archive/2008/11/05/1327565.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值