技术文栏 浏览文章 直接双击页面元素进行修改的实现

直接双击页面元素进行修改的实现
来源: | 更新日期: 2009-4-21 2:05:11 | 阅读(1575)人次 | 评论(0)条 |
在一些网站上我们经常看到交互性很强的功能。一些用户资料可以直接双击出现文本框,并在此输入新的资料即可修改,无需再按确定按钮等。
这些功能看似较难,其实实现起来很简单,只需几行代码就可实现。
Code:
01.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
02.<html xmlns="http://www.w3.org/1999/xhtml">  
03.<head>  
04.<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
05.<title>直接双击页面元素进行修改的HTML代码</title>  
06.<script type="text/javascript">  
07.function ShowElement(element)  
08.{
09.    var oldhtml = element.innerHTML;   //获得元素之前的内容
10.    var newobj = document.createElement(''input'');   //创建一个input元素
11.    newobj.type = ''text'';   //为newobj元素添加类型
12.    newobj.value=oldhtml;
13.    element.innerHTML = '''';   //设置元素内容为空
14.    element.appendChild(newobj);   //添加子元素
15.    
16.    newobj.focus();   //获得焦点
17.    newobj.onfocus = function()
18.    {
19.        element.ondblclick='''';//取消元素的双击事件
20.    }
21.    //设置newobj失去焦点的事件
22.    newobj.onblur = function()
23.    {
24.        element.innerHTML = this.value ? this.value : oldhtml;   //当触发时判断newobj的值是否为空,为空则不修改,并返回oldhtml
25.        element.ondblclick = function()//还原元素的双击事件
26.        {
27.            ShowElement(this);
28.        }
29.    }
30.}
31.</script>  
32.</head>  
33.  
34.<body>  
35.<dl>  
36.  <dt>用户名:</dt>  
37.  <dd ondblclick="ShowElement(this)">小草</dd>  
38.  <dt>个人宣言</dt>  
39.  <dd ondblclick="ShowElement(this)">这家伙很懒,什么也没留下!</dd>  
40.</dl>
41.</body>  
42.</html>
所属分类: 网页制作类 - Javascript
作者:
 
上一篇
下一篇

已有 0 位对此文章感兴趣的网友发表了看法 发表评论 快速查看 阅读全部
正在查询状态...

[item:name], 您好

您有 [item:emoney] 乔币和 [item:integral]

我的短信箱 ([item:mail_new] 新)

用户中心  退出登录

用户名

密 码

 

注册新用户   登录   找回密码

年份检索