js实现编辑div节点名称的方法

本文实例讲述了js实现编辑div节点名称的方法。分享给大家供大家参考。具体实现方法如下:

节点html代码如下:

<div class="img_1" id="img_1" >

     <input type="image" class="img_1" src="img/cump.png"></input>

     <div class="noteText" id="noteTxt" type="text" ondblclick ="changeName(this.id);">123</div>

</div>

js编辑noteTxt文本,function如下:
function changeName(noteTxtId){

        var noteTxt = document.getElementById(noteTxtId);

        noteTxt.style.display= "none";//.style.display= "block"

        var div = noteTxt.parentNode;

        if(!document.getElementById("noteInput")){             var text=document.createElement("input");             text.type="text";             text.id="noteInput";

            text.style.width=getStyle(noteTxt,'width');             text.style.height=getStyle(noteTxt,'height');             text.style.marginTop=getStyle(noteTxt,'marginTop');             text.style.textAlign=getStyle(noteTxt,'textAlign');

            text.value=noteTxt.innerHTML;             div.appendChild(text);             text.select();             text.onblur=function(){                 noteTxt.style.display= "block";                 noteTxt.innerHTML=text.value;                 //text.style.display= "none";                 div.removeChild(text);         }         }      }

     //获得css文件中的样式      function getStyle(obj, attr)      {         if(obj.currentStyle)           {         return obj.currentStyle[attr];  //IE         }else{                       return getComputedStyle(obj,false)[attr];  //FF      } }

css如下:

.img_1 {  

    width: 80px;

    height:70px;

    position:absolute;    

}

.noteText {     width:80px;     height:15px;     text-align:center;     margin-top:70px;     word-break:break-all; }

希望本文所述对大家的javascript程序设计有所帮助。