JS DOM 来控制HTML元素
JS DOM 来控制HTML元素
(ps:这个有很多方法,挑一些详解,嘻嘻)
1.getElementsByName():获取name.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`
例:<p name="pn">hello</p>
<p name="pn">hello</p>
<p name="pn">hello</p>
<script>
function getName(){
var count=document.getElementsByName("pn");
alert(count.length);
var p=count[2];
p.innerHTML="world";
}
</script>
结果:界面打印出三个hello,并且伴有一个提示框“3”,当点击确定后,界面显示的内容变为hello hello world
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~··
2.getElementsByTagName():获取元素。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
例:<p>hello</p>
<p>hello</p>
<p>hello</p>
<script>
function getName(){
var count=document.getElementsByTagName("p");
alert(count.length);
var p=count[2];
p.innerHTML="world";
}
</script>
结果:界面打印出三个hello,并且伴有一个提示框“3”,当点击确定后,界面显示的内容变为hello hello world
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3.getAttribute():获取元素属性。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
例:<a id="aid" title="得到a的标签属性"></a>
<script>
function getAttr1(){
var anode=document.getElementById("aid");
var attr=anode.getAttribute("id");
alert("a的ID是:"+attr);
}
function getAttr2(){
var anode=document.getElementById("aid");
var attr=anode.getAttribute("title");
alert("a的title内容是:"+attr);
}
getAttr1();
getAttr2();
</script>
结果:弹出提示框“a的ID是:aid”.点击确定后,弹出提示框“a的title内容是:得到a的标签属性”。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4.setAttribute()设置元素属性。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
例:<a id="aid2">aid2</a>
<script>
function setAttr(){
var anode=document.getElementById("aid2");
anode.setAttribute("title","动态设置a的title属性");
var attr=anode.getAttribute("title");
alert("动态设置的title值为:"+attr);
}
setAttr();
</script>
结果:弹出提示框“动态设置的title值为:动态设置a的title属性”。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5.childNodes():访问子节点。
~~~~~~~~~~~~~~~~~~~~~~~~~~··
例:<ul><li>1</li><li>2</li><li>3</li></ul>
<script>
function getChildNode(){
var childnode=document.getElementsByTagName("ul")[0].childNodes;
alert(childnode.length);
alert(childnode[0].nodeType);
}
getChildNode();
</script>
结果:界面打印出.1 .2 .3弹出对话框“3”,按确定后弹出“1”。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
6.parentNode():访问父节点。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·
例:<div>
<p id="pid"></p>
</div>
<script>
function getParentNode(){
var div=document.getElementById("pid");
alert(div.parentNode.nodeName);
}
getParentNode();
</script>
结果:弹出提示框:DIV.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7.createElement():创建元素节点。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
例:
<script>
function createNode(){
var body=document.body;
var input=document.createElement("input");
input.type="button";
input.value="按钮";
body.appendChild(input);//插入节点
}
createNode();
</script>
结果:出现一个按钮。
~~~~~~~~~~~~~~~~~~~~~~~~~~~
8.createTextNode():创建文本节点。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
例:
<script>
function createNode(){
var element = document.createElement("div");
element.className = "message";
var textNode = document.createTextNode("Hello world!");
element.appendChild(textNode);
document.body.appendChild(element);
}
createNode();
</script>
代码分析:这个例子创建了一个新<div>元素并为它指定了值为“message”的class特性。然后,又创建了一个文本节点,并将其添加到前面创建的元素中。最后一步,就是将这个元素添加到了文档中的<body>元素中,这样可以在浏览器中看到新创建的元素和文本节点了。
结果:页面显示hello world。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
9.insertBefore():插入节点。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
例:<div id="div">
<p id="pid">p元素</p>
</div>
<script>
function addNode(){
var div=document.getElementById("div");
var node=document.getElementById("pid");
var newnode=document.createElement("p");
newnode.innerHTML="动态插入一个p元素";
div.insertBefore(newnode,node);
}
addNode();
</script>
结果:界面打印出:动态插入一个p元素
p元素
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
10.removeChild():删除节点。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·
例:<div id="div">
<p id="pid">p元素</p>
</div>
<script>
function removeNode(){
var div=document.getElementById("div");
var p=div.removeChild(div.childNodes[1]);
}
removeNode();
</script>
结果:界面什么也没显示。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
11.offsetHeight:网页尺寸
12.scrollHeight:网页尺寸
~~~~~~~~~~~~~~~~~~~~~~~~~~~·
例:
<script>
function getSize(){
var width=document.documentElement.offsetWidth||document.body.offsetWidth;//解决兼容问题
var height=document.documentElement.offsetHeight||document.body.offsetHeight;
alert(width+","+height);
}
getSize();
</script>
显示结果:
JS DOM 来控制HTML元素的更多相关文章
- JS DOM对象控制HTML元素详解
JS DOM对象控制HTML元素详解 方法: getElementsByName() 获取name getElementsByTagName() 获取元素 getAttribute() 获取元素 ...
- 二、JavaScript语言--JS基础--JavaScript进阶篇--DOM对象 控制HTML元素
1.认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 先来看看下面 ...
- javascript - DOM对象控制HTML元素详解
1.方法 getElementsByName() -- 获取name getElementByTagName() -- 获取 getAttribute() --获取元素属性 se ...
- web前端学习(四)JavaScript学习笔记部分(7)-- JavaScript DOM对象控制HTML元素详解
1.方法 getElementsByName() 获取name 可以获取一个数组类型数据(参数加引号) getElementsByTagName() 获取元素 getAttribute() 获取元 ...
- DOM操作,控制HTML元素 (原生JS)
文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 先来看看下面代码: 将HTM ...
- 使用JS控制伪元素的几种方法
一. 缘由: 本文源于在OSC社区中,有人提问如何用jq获取伪元素.我第一想法是强大的CSS Query应该可以获取伪元素吧. 然而事实上,CSS Query并不能.即我们不能通过$(":b ...
- JavaScript进阶 - 第9章 DOM对象,控制HTML元素
第9章 DOM对象,控制HTML元素 9-1 认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属 ...
- JS控制HTML元素的显示和隐藏
JS控制HTML元素的显示和隐藏 利用来JS控制页面控件显示和隐藏有两种方法,两种方法分别利用HTML的style中的两个属性,两种方法的不同之处在于控件隐藏后是否还在页面上占空位. 方法一: 1 2 ...
- JS总结之二:DOM对象控制HTML
DOM对象控制HTML 1.方法 getElementsByName( ) ——获取name getElementsByTagName( ) ——获取元素 getAttribute( ) ——获取元素 ...
随机推荐
- Ignatius and the Princess IV
Ignatius and the Princess IV Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32767 K ( ...
- Android稳定性测试之Log分析
做手机自动化测试已经快两年了,很久没写Blog了.今天抽空总结一下. 用自动化做稳定性测试,主要是为了发现系统或者应用出现FC/ ANR/ Reboot/ Freeze等问题. 先详细说下各种问题对应 ...
- Object-c 基础总结
1,nil,NULL,NSNull:nil用来给对象附值,object—c里允许对象为空,空对象也可以接受消息.但是不允许指针为空,NULL是给任何指针附值的.所以NULL只在C或C++里才用.NSN ...
- webstorage调查资料汇总
在调查webstorage的过程中,一步一步了解了各种缓存或存储机制,local storage本地存储,application cache离线应用存储,http cache是http本身自带的缓存机 ...
- IoC/DIP其实是一种管理思想
关于IoC的的概念提出来已经很多年了,其被用于一种面象对像的设计.我在这里再简单的回顾一下这个概念.我先谈技术,再说管理. 话说,我们有一个开关要控制一个灯的开和关这两个动作,最常见也是最没有技术含量 ...
- hibernate sql查询
如果你跟我一样比较熟悉SQL,同时不想学习一门新的语言.那么在hibernate中使用Native SQL 查询也是一种不错的方式. 一方面,Native SQL在效率方面有天生的优势: 另一方面,S ...
- MVC-@html.ActionLink的几种参数格式
一 Html.ActionLink("linkText","actionName") 该重载的第一个参数是该链接要显示的文字,第二个参数是对应的控制器的方法, ...
- gist c code
http://lear.inrialpes.fr/software Fisher kernel: http://vision.caltech.edu/~sbranson/code/index.html ...
- java数据库连接池dbcp的使用
近年来,随着Internet/Intranet建网技术的飞速发展和在世界范围内的迅速普及,计算机 应用程序已从传统的桌面应用转到Web应用.基于B/S(Browser/Server)架构的3层开发模式 ...
- 关闭对话框,OnClose和OnCancel
我们知道,在对话框中,屏蔽ESC键自己主动退出能够选择重载OnCancel为哑函数的方法: void CXXXXDlg::OnCancel() { // TODO: Add ...