直接双击页面元素进行修改的HTML代码
在腾讯空间和一些网站上我们经常看到交互性很强的功能。一些用户资料可以直接双击出现文本框,并在此输入新的资料即可修改,无需再按确定按钮等。。
这些功能看似较难,其实实现起来很简单,只需几行代码就可实现。希望对一些新手有所帮助,高手请飘过~
注意代码中加粗部分。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>直接双击页面元素进行修改的HTML代码</title>
<script type="text/javascript">
function ShowElement(element)
{
var oldhtml = element.innerHTML; //获得元素之前的内容
var newobj = document.createElement('input'); //创建一个input元素
newobj.type = 'text'; //为newobj元素添加类型
//设置newobj失去焦点的事件
newobj.onblur = function(){
element.innerHTML = this.value ? this.value : oldhtml; //当触发时判断newobj的值是否为空,为空则不修改,并返回oldhtml。
}
element.innerHTML = ''; //设置元素内容为空
element.appendChild(newobj); //添加子元素
newobj.focus(); //获得焦点
}
</script>
</head>
<body>
<dl>
<dt>用户名:</dt>
<dd ondblclick="ShowElement(this)">笨笨狼</dd>
<dt>个人宣言</dt>
<dd ondblclick="ShowElement(this)">这家伙很懒,什么也没留下!</dd>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>直接双击页面元素进行修改的HTML代码</title>
<script type="text/javascript">
function ShowElement(element)
{
var oldhtml = element.innerHTML; //获得元素之前的内容
var newobj = document.createElement('input'); //创建一个input元素
newobj.type = 'text'; //为newobj元素添加类型
//设置newobj失去焦点的事件
newobj.onblur = function(){
element.innerHTML = this.value ? this.value : oldhtml; //当触发时判断newobj的值是否为空,为空则不修改,并返回oldhtml。
}
element.innerHTML = ''; //设置元素内容为空
element.appendChild(newobj); //添加子元素
newobj.focus(); //获得焦点
}
</script>
</head>
<body>
<dl>
<dt>用户名:</dt>
<dd ondblclick="ShowElement(this)">笨笨狼</dd>
<dt>个人宣言</dt>
<dd ondblclick="ShowElement(this)">这家伙很懒,什么也没留下!</dd>
</body>
</html>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?