JSDOM模型的样例
参考自:http://www.w3school.com.cn/js/js_htmldom_html.asp
1.查找HTML元素
(1)利用getElementById()方法
实现点击元素改变文字内容:
<!doctype html>
<html><head><title>利用id方法查找</title><meta charset = 'utf-8'></head><body><span id = 'www' onclick = 'change()'>这是要改变的文字</span></body><script>function change(){var pass = document.getElementById('www')pass.innerHTML = '我已经改变你了,哈哈!!!'}</script>
</html>
(2)利用getElementsByTagName()方法
实现点击元素改变文字内容:
<!doctype html>
<html><head><title>利用TagName方法查找</title><meta charset = 'utf-8'></head><body><p onclick = 'change()'>这是要改变的文字</p><p>不要改变我啊!!!</p></body><script>function change(){var pass = document.getElementsByTagName('p')pass[0].innerHTML = '我已经改变你了,哈哈!!!'pass[1].innerHTML = '我已经改变你了,哈哈!!!'}</script>
</html>
(3)利用getElementsByClassName()方法
(4)利用getElementsByName()方法
注意:凡是有s的函数,都返回对象的几个,只有第一个函数返回一个对象。
这些方法参考自:http://blog.csdn.net/ernijie/article/details/51332534
2.改变HTML文档
(1)改变HTML文档输出流:
直接利用write函数
创建了一个覆盖文档的例子和一个不会覆盖当前文档的例子:
<html><head><title>利用TagName方法查找</title><meta charset = 'utf-8'><script>function recreate(){document.write('糟糕!!!重新创建了一个文档!!!')}</script></head><body><p οnclick='recreate()'>这是原生段落</p></body><script>document.write('这是新加进来的段落')</script>
</html>
(2)改变HTML文档内容,利用innerHTML
前面的例子也多有用到,也可以参考这个http://blog.csdn.net/f156207495/article/details/78125332
(3)改变HTML属性
实现图片src属性的变换
可以利用document.geetElementById('xx').src来改变
<!doctype html><html><head><title>这是利用js来实现根据不同的日期更新图片</title><meta charset ='utf-8'></head><body><img src="0" alt="这是图片" id='weekday'></body><script language="JavaScript"> var MyDate = new Date()var num = MyDate.getDay()var tx = new Array(7)document.write(num)tx[1]='tx_array\\1.jpg'tx[2]='tx_array\\2.jpg'tx[3]='tx_array\\3.jpg'tx[4]='tx_array\\4.jpg'tx[5]='tx_array\\5.jpg'tx[6]='tx_array\\6.jpg'tx[0]='tx_array\\7.jpg'var week = document.getElementById('weekday')week.src = tx[num]</script>
</html>
3.改变元素的样式属性,即CSS
点击元素,文字变红。
可以利用document.getElementById.style.某个属性=***
<!doctype html><html><head><title>改变HTML元素的样式属性</title><meta charset ='utf-8'></head><body><p onclick = 'change()'>这是需要改变的文字,看我变红变红!!!</p></body><script language="JavaScript"> function change(){document.getElementsByTagName('p')[0].style.color = 'red'}</script>
</html>
4.对HTML事件做出反应
前面已经有很多对事件的处理样例了,这里说一下在JavaScript中增加事件属性。
<!DOCTYPE html>
<html>
<head>
</head>
<body><p>点击按钮就可以执行 <em>displayDate()</em> 函数。</p><button id="myBtn">点击这里</button><script>
document.getElementById("myBtn").οnclick=function(){displayDate()};
function displayDate()
{
document.getElementById("demo").innerHTML=Date();
}
</script><p id="demo"></p></body>
</html>
5.添加或修改HTML元素
添加和删除HTML元素混合在一个代码里了:
<!doctype html>
<html><head><title>HTML元素的添加和查找</title><meta charset = 'utf-8'></head><body><div id = 'pp'><p id ='p1'>这是一个段落</p><p id = 'p2'>这是第二个段落</p></div></body><script>var para = document.createElement('p');var node = document.createTextNode("这是新段落")para.appendChild(node)var element = document.getElementById('p2')element.appendChild(para)//添加新段落var parent = document.getElementById('pp')var child = document.getElementById('p2')parent.removeChild(child)//删除段落</script>
</html>
添加HTML元素要先创建一个p元素,然后创建文本节点,再向p元素添加该文本节点,然后找到一个父节点,再向该父节点中添加该p元素即可。
删除HTML元素要先找到删除节点所在的父节点,然后再找到需要删除的节点,然后再用removeChild这个语法来删除该元素
JSDOM模型的样例相关推荐
- 创建和准备Oracle样例数据库
一 创建Oracle样例数据库 此处有一个Oracle创建数据库和表和插入数据的脚本: http://www.forta.com/books/0672336073/ 亦可在此下载: http://pa ...
- 逻辑回归的向量化实现样例
逻辑回归的向量化实现样例 From Ufldl Jump to: navigation, search 我们想用批量梯度上升法对logistic回归分析模型进行训练,其模型如下: 让我们遵从公开 ...
- Stanford UFLDL教程 逻辑回归的向量化实现样例
逻辑回归的向量化实现样例 我们想用批量梯度上升法对logistic回归分析模型进行训练,其模型如下: 让我们遵从公开课程视频与CS229教学讲义的符号规范,设 ,于是 ,, 为截距.假设我们有m个训练 ...
- Prism安装、MVVM基础概念及一个简单的样例
一:Prism的下载和安装 1:在http://compositewpf.codeplex.com/上下载最新的包. 下载完毕后,运行之,选择解压目录解压之.解压完毕的根目录下有chm帮助文档. 2: ...
- 推荐TensorFlow2.0的样例代码下载
TensorFlow推出2.0版本后,TF2.0相比于1.x版本默认使用Keras.Eager Execution.支持跨平台.简化了API等.这次更新使得TF2.0更加的接近PyTorch,一系列烦 ...
- java设计模式演示样例
创建模式 1.工厂方法模式(Factory Method) 将程序中创建对象的操作,单独出来处理,创建一个产品的工厂接口,把实际的工作转移到详细的子类.大大提高了系统扩展的柔性,接口的抽象化处理给相 ...
- Yii学习笔记之二(使用gii生成一个简单的样例)
1. 数据库准备 (1) 首先我们建一数据库 yii2test 并建立一张表例如以下: DROP TABLE IF EXISTS `posts`; CREATE TABLE `posts` (`pos ...
- 最简单的视音频播放演示样例5:OpenGL播放RGB/YUV
===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...
- Python Web框架Tornado的异步处理代码演示样例
1. What is Tornado Tornado是一个轻量级但高性能的Python web框架,与还有一个流行的Python web框架Django相比.tornado不提供操作数据库的ORM接口 ...
最新文章
- java 1000个线程_关于Java多线程的一个问题
- Visual Studio 2012中的为创建类时的添加注释模板
- 机器学习面试题合集Collection of Machine Learning Interview Questions
- Css3新属性:calc()
- C语言课后习题(33)
- 笨方法学python3 mobi_[下载]Learn Python 3 the Hard Way(已更新完整版PDF\AZW3\EPUB\MOBI)...
- oracle的一些学习
- 从随机森林到极端随机森林,再到深度森林
- 网口压线顺序_水晶头网线排序方法 网线安装必看【图文教程】
- AI芯片:寒武纪Cambricon-X结构分析
- OSChina 周日乱弹 ——苟富贵,勿相忘。
- 嵌入式硬件学习之嵌入式软件和硬件的区别
- 一加7t人脸识别_90Hz新品,一加7T系列国内发布日期官宣
- matlab中nargin函数
- 【口才】谈判说服技巧及策略
- 基于FPGA的VGA显示
- 电脑电源怎么选择,备战40系功耗升级之战
- 逆水寒能不能网页预约服务器,逆水寒春暖花开服务器怎么预约?春暖花开服务器预约方法介绍...
- vue脚手架和html,vue脚手架的作用是什么?
- 用晚餐瘦身是最好的方法
热门文章
- 【云ERP】SAP S/4 HANA CLOUD 采购订单处理基本操作
- 【Oracle】函数简介与入门
- ERP选型 SAP PK Oracle
- 那些财务眼中的SAP
- 如何设计ABAP/4 Query报表
- 做总账凭证FB50报错“错误调用功能模块 CHECK_PLANTS_ABROAD_ACTIVE”
- 最具中产气质的“网易考拉”,离“中国版Costco”还有多远?
- java thumbnails 中心点_java Thumbnails 图片处理的使用
- mysql5.5对应的hibernate_Hibernate和Mysql5.5创建表出错——type=InnDB
- java队列_RPC远程调用和消息队列MQ的区别