javascript实现节点(div)名称编辑_javascript技巧
程序员文章站
2022-03-29 13:30:44
...
节点html代码如下:
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
}
}
.img_1 {
width: 80px;
height:70px;
position:absolute;
}
.noteText {
width:80px;
height:15px;
text-align:center;
margin-top:70px;
word-break:break-all;
}
复制代码 代码如下:
123
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;
}
代码非常的简单,这里就不多做解释了,下伙伴们可以*发挥下,使用到自己的项目中去。
上一篇: 怎样使用vue多页面开发打包
推荐阅读
-
不用ajax实现点击文字即可编辑的方法_javascript技巧
-
js实现DIV的一些简单控制_javascript技巧
-
纯js实现div内图片自适应大小(已测试,兼容火狐)_javascript技巧
-
两个DIV等高的JS的实现代码_javascript技巧
-
JavaScript实现DIV层拖动及动态增加新层的方法_javascript技巧
-
js实现DIV的一些简单控制_javascript技巧
-
JS 实现Div向上浮动的实现代码_javascript技巧
-
js解决弹窗问题实现班级跳转DIV示例_javascript技巧
-
使用js实现一个可编辑的select下拉列表_javascript技巧
-
Javascript简单实现可拖动的div_javascript技巧