JavaScript操作HTML元素和样式的方法详解


Posted in Javascript onOctober 21, 2015

JavaScript HTML DOM 元素(节点)
创建新的 HTML 元素
如需向 HTML DOM 添加新元素,您必须首先创建该元素(元素节点),然后向一个已存在的元素追加该元素。
 实例

<div id="div1">
<p id="p1">This is a paragraph.</p>
<p id="p2">This is another paragraph.</p>
</div>

<script>
var para=document.createElement("p");
var node=document.createTextNode("This is new.");
para.appendChild(node);

var element=document.getElementById("div1");
element.appendChild(para);
</script>

例子解析:
这段代码创建新的<p> 元素:

var para=document.createElement("p");

如需向 <p> 元素添加文本,您必须首先创建文本节点。这段代码创建了一个文本节点:

var node=document.createTextNode("This is a new paragraph.");

然后您必须向 <p> 元素追加这个文本节点:

para.appendChild(node);

最后您必须向一个已有的元素追加这个新元素。
这段代码找到一个已有的元素:

var element=document.getElementById("div1");

以下代码在已存在的元素后添加新元素:

element.appendChild(para);

删除已有的 HTML 元素
这段代码向这个已有的元素追加新元素:
实例

<div id="div1">
<p id="p1">This is a paragraph.</p>
<p id="p2">This is another paragraph.</p>
</div>
<script>
var parent=document.getElementById("div1");
var child=document.getElementById("p1");
parent.removeChild(child);
</script>

实例解析
这个 HTML 文档含有拥有两个子节点(两个 <p> 元素)的 <div> 元素:

<div id="div1">
<p id="p1">This is a paragraph.</p>
<p id="p2">This is another paragraph.</p>
</div>

找到 id="div1" 的元素:

var parent=document.getElementById("div1");

找到 id="p1" 的 <p> 元素:

var child=document.getElementById("p1");

从父元素中删除子元素:

parent.removeChild(child);

lamp 如果能够在不引用父元素的情况下删除某个元素,就太好了。
不过很遗憾。DOM 需要清楚您需要删除的元素,以及它的父元素。
这是常用的解决方案:找到您希望删除的子元素,然后使用其 parentNode 属性来找到父元素:

var child=document.getElementById("p1");
child.parentNode.removeChild(child);

JavaScript HTML DOM - 改变CSS
HTML DOM 允许 JavaScript 改变 HTML 元素的样式。
改变 HTML 样式
如需改变 HTML 元素的样式,请使用这个语法:
document.getElementById(id).style.property=new style
下面的例子会改变 <p> 元素的样式:
实例

<html>
<body>

<p id="p2">Hello World!</p>

<script>
document.getElementById("p2").style.color="blue";
</script>

<p>The paragraph above was changed by a script.</p>

</body>
</html>

本例改变了 id="id1" 的 HTML 元素的样式,当用户点击按钮时:
实例

<!DOCTYPE html>
<html>
<body>

<h1 id="id1">My Heading 1</h1>
<button type="button" 
onclick="document.getElementById('id1').style.color='red'">
Click Me!</button>

</body>
</html>
Javascript 相关文章推荐
javascript读取RSS数据
Jan 20 Javascript
utf-8编码引起js输出中文乱码的解决办法
Jun 23 Javascript
Three.js源码阅读笔记(物体是如何组织的)
Dec 27 Javascript
Extjs中TabPane如何嵌套在其他网页中实现思路及代码
Jan 27 Javascript
jQuery动态设置form表单的enctype值(实现代码)
Jul 04 Javascript
用html5 js实现点击一个按钮达到浏览器全屏效果
May 28 Javascript
JS实现一个列表中包含上移下移删除等功能
Sep 24 Javascript
jQuery实现预加载图片的方法
Mar 17 Javascript
Bootstrap中的fileinput 多图片上传及编辑功能
Sep 05 Javascript
ajax接收后台数据在html页面显示
Feb 19 Javascript
vue-router权限控制(简单方式)
Oct 29 Javascript
Vue.js实现开发购物车功能的方法详解
Feb 22 Javascript
13个PHP函数超实用
Oct 21 #Javascript
JavaScript对HTML DOM使用EventListener进行操作
Oct 21 #Javascript
JavaScript对象数组的排序处理方法
Oct 21 #Javascript
Javascript刷新窗口方法小结
Oct 21 #Javascript
JavaScript简单遍历DOM对象所有属性的实现方法
Oct 21 #Javascript
详解JavaScript操作HTML DOM的基本方式
Oct 21 #Javascript
JavaScript函数的调用以及参数传递
Oct 21 #Javascript
You might like
PHP经典的给图片加水印程序
2006/12/06 PHP
IIS6.0中配置php服务全过程解析
2013/08/07 PHP
PHP中file_get_contents高?用法实例
2014/09/24 PHP
PHP中的魔术方法总结和使用实例
2015/05/11 PHP
PHP的Laravel框架中使用消息队列queue及异步队列的方法
2016/03/21 PHP
使用jquery读取html5 localstorage的值的方法
2013/01/04 Javascript
jQuery实现购物车多物品数量的加减+总价计算
2014/06/06 Javascript
Nodejs全栈框架StrongLoop推荐
2014/11/09 NodeJs
移动端JQ插件hammer使用详解
2015/07/03 Javascript
JSON字符串转JSON对象
2015/07/31 Javascript
jQuery图片旋转插件jQueryRotate.js用法实例(附demo下载)
2016/01/21 Javascript
jQuery使用Selectator插件实现多选下拉列表过滤框(附源码下载)
2016/04/08 Javascript
jQuery+CSS3文字跑马灯特效的简单实现
2016/06/25 Javascript
JavaScript函数参数的传递方式详解
2017/03/06 Javascript
vue axios用法教程详解
2017/07/23 Javascript
用最少的JS代码写出贪吃蛇游戏
2018/01/12 Javascript
微信小程序引用iconfont图标的方法
2018/10/22 Javascript
详解单页面路由工程使用微信分享及二次分享解决方案
2019/02/22 Javascript
JS字符串与二进制的相互转化实例代码详解
2019/06/28 Javascript
使用JavaScript获取Django模板指定键值数据
2020/05/27 Javascript
python实现备份目录的方法
2015/08/03 Python
python django 访问静态文件出现404或500错误
2017/01/20 Python
浅析使用Python操作文件
2017/07/31 Python
python自动化生成IOS的图标
2018/11/13 Python
python实现大文本文件分割
2019/07/22 Python
pyqt5中动画的使用详解
2020/04/01 Python
如何在VSCode下使用Jupyter的教程详解
2020/07/13 Python
美国和加拿大房车出售在线分类广告:RVT.com
2018/04/23 全球购物
英国顶级珠宝品牌之家:John Greed
2018/06/09 全球购物
什么叫应用程序域?什么是托管代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?
2012/05/23 面试题
高二化学教学反思
2014/01/30 职场文书
动画设计系毕业生求职信
2014/07/15 职场文书
避暑山庄导游词
2015/02/04 职场文书
初中英语教师个人工作总结
2015/02/09 职场文书
奖励通知
2015/04/22 职场文书
小学班主任培训心得体会
2016/01/07 职场文书