`
crazier9527
  • 浏览: 1008749 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

javascript+dom更改html内容总结

阅读更多

利用JavaScript和dom结合来动态改变HTML内容。

1. innerHTML

HTML代码
<textarea id="temp73400" style="width: 505px; height: 132px;" cols="55" rows="8"><div onmouseover="this.innerHTML='<a href=#>test div</a>'" style="width:100px;height:100px;border:#333 1px solid;"></div></textarea>
<input class="userbutton" onclick="runEx('temp73400')" maxlength="2147483647" size="20" type="button" value="运行此代码"> <input class="userbutton" onclick="doCopy('temp73400')" maxlength="2147483647" size="20" type="button" value="复制此代码"> <input class="userbutton" onclick="saveCode('temp73400')" maxlength="2147483647" size="20" type="button" value="保存此代码">
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



2.outerHTML(IE only)

HTML代码
<textarea id="temp30011" style="width: 491px; height: 132px;" cols="53" rows="8"><style type="text/css"> span a{color:#DF860D;font-weight:bold;} </style> <div><a href="#" onclick="this.outerHTML='<span>'+this.outerHTML+'</span>'">点击查看效果</a></div></textarea>
<input class="userbutton" onclick="runEx('temp30011')" maxlength="2147483647" size="20" type="button" value="运行此代码"> <input class="userbutton" onclick="doCopy('temp30011')" maxlength="2147483647" size="20" type="button" value="复制此代码"> <input class="userbutton" onclick="saveCode('temp30011')" maxlength="2147483647" size="20" type="button" value="保存此代码">
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



3.add应用于:areas | control | Range | options | namespaces

HTML代码
<textarea id="temp33620" style="width: 490px; height: 132px;" cols="53" rows="8"><style type="text/css"> div{font-size:12px;margin:6px 0px;} input{border:#999999 1px solid;font-size:12px;} .ipt1{width:120px;height:16px;} .ipt2{width:20px;height:16px;color:#124D6B;} .ipt3{width:40px;height:20px;} select{width:266px;border:#999999 1px solid;font-size:12px;height:22px;} </style> <script> function add(){ var text,index; with (document.getElementsByTagName("input")[1]) index=parseInt(value,10); with (document.getElementsByTagName("input")[0]) if (value=="") text=value="第"+ index.toString()+"个option子对象";else text=value; var option=document.createElement("option"); document.getElementsByTagName("select")[0].options.add(option,index); option.innerHTML=option.Value=text; document.getElementsByTagName("input")[0].value="第"+(index+1)+"个option子对象"; document.getElementsByTagName("input")[1].value=index+1; option.selected=true; } </script> <select><option value="0" selected>第0个option子对象</option></select> <div> 文本:<input class="ipt1" type="text" value="第1个option子对象"> 序号:<input class="ipt2" type="text" value="1"> <input class="ipt3" type="button" value="添加" onclick="add()"></textarea>
<input class="userbutton" onclick="runEx('temp33620')" maxlength="2147483647" size="20" type="button" value="运行此代码"> <input class="userbutton" onclick="doCopy('temp33620')" maxlength="2147483647" size="20" type="button" value="复制此代码"> <input class="userbutton" onclick="saveCode('temp33620')" maxlength="2147483647" size="20" type="button" value="保存此代码">
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



4.document.createElement(tag)+appendChild(e)

HTML代码
<textarea id="temp96235" style="width: 524px; height: 132px;" cols="57" rows="8"><style type="text/css"> ul{color:#003399;font-size:12px;line-height:22px;} ul a:link,ul a:visited{color:#003399;text-decoration:none;} ul a:hover{color:#CD720C;text-decoration:underline;} </style> <script> var i=1; function append(){ this.li=document.createElement("li"); this.a=document.createElement("a"); this.a.setAttribute("href","#"); //必须 document.getElementsByTagName("ul")[0].appendChild(this.li).appendChild(this.a); i++; this.a.innerHTML="第"+i.toString()+"个列表项目"; } </script> <ul> <li>第1个列表项目</li> </ul> <input type="button" value="添加Li" onclick="append()"></textarea>
<input class="userbutton" onclick="runEx('temp96235')" maxlength="2147483647" size="20" type="button" value="运行此代码"> <input class="userbutton" onclick="doCopy('temp96235')" maxlength="2147483647" size="20" type="button" value="复制此代码"> <input class="userbutton" onclick="saveCode('temp96235')" maxlength="2147483647" size="20" type="button" value="保存此代码">
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



5.document.write("")清除页面内容

HTML代码
<textarea id="temp34947" style="width: 529px; height: 132px;" cols="58" rows="8"><script> function clearcontent(){ document.write(""); document.close(); } </script> <input type=button value="清除页面内容" onclick="clearcontent();"></textarea>
<input class="userbutton" onclick="runEx('temp34947')" maxlength="2147483647" size="20" type="button" value="运行此代码"> <input class="userbutton" onclick="doCopy('temp34947')" maxlength="2147483647" size="20" type="button" value="复制此代码"> <input class="userbutton" onclick="saveCode('temp34947')" maxlength="2147483647" size="20" type="button" value="保存此代码">
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



6.cloneNode

HTML代码
<textarea id="temp45369" style="width: 505px; height: 132px;" cols="55" rows="8"><style type="text/css"> ul{color:#003399;font-size:12px;line-height:22px;} </style> <script> function Clone(){ var o=document.getElementsByTagName("ul")[0].cloneNode(true); document.getElementsByTagName("div")[0].appendChild(o); } </script> <ul> <li>第1个列表项目</li> <li>第2个列表项目</li> <li>第3个列表项目</li> </ul> <div></div> <input type=button value="克隆UL" onclick="Clone();"></textarea>
<input class="userbutton" onclick="runEx('temp45369')" maxlength="2147483647" size="20" type="button" value="运行此代码"> <input class="userbutton" onclick="doCopy('temp45369')" maxlength="2147483647" size="20" type="button" value="复制此代码"> <input class="userbutton" onclick="saveCode('temp45369')" maxlength="2147483647" size="20" type="button" value="保存此代码">
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



7.confirm

HTML代码
<textarea id="temp60987" style="width: 513px; height: 132px;" cols="56" rows="8"><script> function userconfirm(){ var sMessage=document.getElementsByTagName("input")[0].value+"?"; var bConfirm=window.confirm(sMessage); with (document.getElementsByTagName("input")[0]) if(bConfirm) value="YES"; else value="NO"; } </script> <input type="button" value="显示对话框" onclick="userconfirm();"></textarea>
<input class="userbutton" onclick="runEx('temp60987')" maxlength="2147483647" size="20" type="button" value="运行此代码"> <input class="userbutton" onclick="doCopy('temp60987')" maxlength="2147483647" size="20" type="button" value="复制此代码"> <input class="userbutton" onclick="saveCode('temp60987')" maxlength="2147483647" size="20" type="button" value="保存此代码">
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



8.removeChild

HTML代码
<textarea id="temp40692" style="width: 489px; height: 132px;" cols="53" rows="8"><style type="text/css"> body{background-color:#EEEEEE; font-size:12px;} ul{font-size:12px;line-height:20px;width:200px;margin:16px 0px;} li{background-color:#CCCCCC; margin:2px 0px; padding-left:6px;} </style> <script language="javascript"> function createList(){ var ul=document.createElement("ul"); for(var i=0;i<=6;i++){ var li=document.createElement("li"); li.innerHTML="测试文字"+i.toString(); li.onclick=changebg; li.ondblclick=remove; ul.appendChild(li); } document.body.appendChild(ul); } function changebg(){ if(this.change){ this.style.backgroundColor="#666666"; this.style.color="#EEEEEE"; this.change=false; }else{ this.style.backgroundColor="#999999"; this.style.color="#333333"; this.change=true; } } function remove(){ var p=this.parentNode; p.removeChild(this); if(p.getElementsByTagName('li').length==0){p.parentNode.removeChild(p);} } </script> <input type=button value="创建列表" onclick="createList()"> 双击可删除</textarea>
<input class="userbutton" onclick="runEx('temp40692')" maxlength="2147483647" size="20" type="button" value="运行此代码"> <input class="userbutton" onclick="doCopy('temp40692')" maxlength="2147483647" size="20" type="button" value="复制此代码"> <input class="userbutton" onclick="saveCode('temp40692')" maxlength="2147483647" size="20" type="button" value="保存此代码">
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



添加清除FF下空白节点函数:

HTML代码
<textarea id="temp1576" style="width: 486px; height: 132px;" cols="52" rows="8"><script language="javascript" type="text/javascript"> //删除空白节点,兼容FF和IE function cleanWhitespace(oEelement){ for(var i=0;i<oEelement.childNodes.length;i++){ var node=oEelement.childNodes[i]; if(node.nodeType==3 && !/\S/.test(node.nodeValue)){node.parentNode.removeChild(node)} } } //删除子节点 function _remove(){ var li=document.getElementsByTagName("li"); var ul=document.getElementsByTagName("ul")[0]; cleanWhitespace(ul); if(ul.hasChildNodes()){ul.removeChild(li[0]);}else{alert("没有了!")} } </script> <ul> <li>白天</li> <li>黎明</li> <li>黑夜</li> </ul> <input type="button" value="removeChild" onclick="_remove()" /></textarea>
<input class="userbutton" onclick="runEx('temp1576')" maxlength="2147483647" size="20" type="button" value="运行此代码"> <input class="userbutton" onclick="doCopy('temp1576')" maxlength="2147483647" size="20" type="button" value="复制此代码"> <input class="userbutton" onclick="saveCode('temp1576')" maxlength="2147483647" size="20" type="button" value="保存此代码">
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



9.insertBefore()

HTML代码
<textarea id="temp18925" style="width: 484px; height: 132px;" cols="52" rows="8"><style type="text/css"> body{background-color:#EEEEEE; font-size:12px;line-height:22px;} span{border:#333333 1px dashed; padding:2px;} ul{width:200px;} ul li{width:100%;} </style> <script language="javascript" type="text/javascript"> var li,ul; function tag(tag){return document.getElementsByTagName(tag)} function nodetype(){ li=document.getElementsByTagName("li"); ul=document.getElementsByTagName("ul"); for(var i=0;i<li.length;i++){ li[i].setAttribute("num",i); li[i].onclick=choose; li[i].ondblclick=exchange; } } function exchange(){ L=this.getAttribute("num"); if(L>0){ul[0].insertBefore(li[L],li[L-1]);}else{alert("当前已经是第一个了!")}; } function choose(){ for(var i=0;i<li.length;i++){li[i].setAttribute("num",i);li[i].style.backgroundColor="#ededed";}; this.style.backgroundColor="#dedede"; } window.onload=nodetype; </script> <div> <ul> <li>节点内容1</li> <li>节点内容2</li> <li>节点内容3</li> <li>节点内容4</li> </ul> </div> 在列表项目上双击,可以交换上下位置</textarea>
<input class="userbutton" onclick="runEx('temp18925')" maxlength="2147483647" size="20" type="button" value="运行此代码"> <input class="userbutton" onclick="doCopy('temp18925')" maxlength="2147483647" size="20" type="button" value="复制此代码"> <input class="userbutton" onclick="saveCode('temp18925')" maxlength="2147483647" size="20" type="button" value="保存此代码">
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



10.replaceChild(newNode,oldNode)

HTML代码
<textarea id="temp19993" style="width: 486px; height: 132px;" cols="53" rows="8"><script language="javascript" type="text/javascript"> function _replace(){ var li=document.getElementsByTagName("li"); var ul=document.getElementsByTagName("ul")[0]; ul.replaceChild(li[2],li[1]); ul.replaceChild(li[1],li[0]); } </script> <ul> <li>白天</li> <li>黎明</li> <li>黑夜</li> </ul> <input type="button" value="replaceChild" onclick="_replace()" /></textarea>
<input class="userbutton" onclick="runEx('temp19993')" maxlength="2147483647" size="20" type="button" value="运行此代码"> <input class="userbutton" onclick="doCopy('temp19993')" maxlength="2147483647" size="20" type="button" value="复制此代码"> <input class="userbutton" onclick="saveCode('temp19993')" maxlength="2147483647" size="20" type="button" value="保存此代码">
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
分享到:
评论

相关推荐

    JavaScript+DOM编程艺术(PDF格式原版+源代码)

    DOM编程艺术这部分内容将详细介绍如何使用JavaScript操作DOM树,包括查找、创建、修改和删除节点,以及如何绑定和处理事件。 书中的源代码包含了一系列与书中实例对应的练习,这些练习可以帮助读者巩固所学知识,...

    JavaScript+DOM编程艺术

    在《JavaScript+DOM编程艺术》中,作者将深入讲解如何通过JavaScript访问和操作DOM,包括选择元素、遍历DOM树、修改节点内容和样式、事件处理以及动画效果等。这些技术是创建响应式和交互式网页必不可少的工具。 书...

    javascript+dom书籍

    通过DOM,我们可以用JavaScript来查找、访问、修改或删除文档的任何部分。DOM的主要接口有Node、Element、Document等,它们分别代表了节点、元素节点和整个文档。例如,`document.getElementById()` 可以找到具有...

    Javascript+DOM编程艺术

    DOM是HTML和XML文档的抽象表示,允许JavaScript代码动态修改页面内容。核心知识点有: 1. **节点操作**:包括获取元素(getElementById、getElementsByTagname等)、创建新节点、插入和删除节点。 2. **属性操作**...

    JavaScript5.0+DOM编程艺术pdf(最新中文版)

    通过DOM修改,可以更新页面内容,甚至实现复杂的动画效果。 此外,本书可能还会涵盖AJAX(异步JavaScript和XML)、JSON(JavaScript对象表示法)、模板引擎、Promise(用于处理异步操作的对象)等现代Web开发中的...

    JavaScript+DOM编程艺术(最新中文版)

    DOM允许开发者通过JavaScript访问和修改HTML文档的每一个部分,例如,可以通过选取特定的DOM节点,改变其样式、内容或属性,实现动态更新网页的效果。 此外,DOM事件处理也是书中不可或缺的部分。事件是用户与网页...

    Javascript+DOM+总结

    通过 DOM,JavaScript 可以访问并操作页面中的所有元素和属性,从而实现动态更新页面内容和样式的目的。 #### 创建节点 在 DOM 操作中,创建节点是一项基本的操作,通常涉及到以下几种方法: ##### `...

    JavaScript+DOM编程艺术(扫描版含源代码)

    《JavaScript+DOM编程艺术》是一本深入探讨JavaScript与DOM(Document Object Model)交互的权威著作。这本书详尽地讲解了如何使用JavaScript这门强大的客户端脚本语言,配合DOM API,来实现网页动态化和增强用户...

    《JavaScript+DOM编程艺术》中文版及源代码

    DOM是HTML和XML文档的结构表示,它将文档转换为树形结构,使JavaScript能够通过编程方式访问和修改网页内容。理解DOM是JavaScript网页编程的关键,因为它提供了对页面元素的操作接口。书中会详细讲解如何使用...

    (这是随书附赠的光盘)HTML+XHTML+CSS+JavaScript+DOM+AJAX语法及范例实用辞典附赠光盘

    JavaScript通过DOM API可以遍历、修改页面内容,实现动态交互。 6. **AJAX(Asynchronous JavaScript and XML)**:AJAX允许在不刷新整个页面的情况下与服务器交换数据并局部更新页面,提升了用户体验。通过...

    树型结构(javascript+dom+xml+css)

    在树型结构中,每个节点都可以被视为一个DOM对象,通过JavaScript我们可以对这些对象进行操作,如查找、修改、添加或删除。 3. XML(Extensible Markup Language):这是一种用于存储和传输结构化数据的标准格式。...

    JavaScriptDOM编程艺术(第2版)PDF版本下载.txt

    尽管实际书籍内容并未给出,但从标题、描述及部分链接信息来看,这本书主要涉及JavaScript及其与DOM操作相关的高级编程技巧。下面将基于这些信息,尽可能地扩展和阐述相关知识点。 ### 一、JavaScript简介 ...

    经典之作javascript dom编程艺术源码

    DOM(Document Object Model)是HTML和XML文档的标准表示,它将文档结构转化为一个可编程的树形模型,使得我们可以用JavaScript来动态修改、添加和删除页面内容。 在JavaScript中,DOM操作主要包括以下几个核心知识...

    DOM+JavaScript+ jq+html手册.rar

    《DOM+JavaScript+jQuery+HTML手册》集合了前端开发中不可或缺的重要参考资料,涵盖了CSS、DOM、HTML5、正则表达式以及W3C规范等多个关键领域。这些文档为开发者提供了全面且深入的理解,帮助他们在构建网页时高效地...

    JavaScript+jQuery程序设计 源码

    2. **DOM操作**:Document Object Model (DOM) 是HTML和XML文档的结构表示,JavaScript通过DOM API可以对网页内容进行动态操作,例如添加、删除或修改元素。在源码中,你可以看到如何选取元素(如`getElementById`、...

    绝对值10分的好东西,最全面的网站制作手册html+css+javascript+jquery+php+xml+vb+flash MX+dom+vml等等共18个手册

    9. DOM(Document Object Model):DOM是HTML和XML文档的标准表示,它是一个树形结构,允许通过编程方式访问和修改文档内容。JavaScript和其他脚本语言通常使用DOM来操作网页元素。 10. VML(Vector Markup ...

    css + Ajax + DOM + javascript

    JavaScript可以通过DOM API操作这些节点,例如添加、删除、修改元素,或者改变元素的样式和属性。DOM事件也是关键部分,它允许我们监听用户交互,如点击、滚动等,然后执行相应的JavaScript代码。DOM遍历和查询方法...

Global site tag (gtag.js) - Google Analytics