JS DOM对象控制HTML元素详解
JS DOM对象控制HTML元素详解
方法:
getElementsByName() 获取name
getElementsByTagName() 获取元素
getAttribute() 获取元素属性
setAttribute() 设置元素属性
childNodes() 访问子节点
parentNode() 访问父节点
createElement() 创建元素节点
createTextNode() 创建文本节点
insertBefore() 插入节点
removeChild() 删除节点
offsetHeight() 网页尺寸
scrollHeight() 网页尺寸
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<p name="pn">hello</p>
<p name="pn">hello</p>
<p name="pn">hello</p>
<p name="pn">hello</p>
<script>
function getName(){
//var count=document.getElementsByName("pn"); //获取name
var count=document.getElementsByTagName("p"); //获取元素
alert(count);
alert(count.length);//拿到4个p元素
var p=count[0];
p.innerHTML="World";
}
getName();
</script> <a id="aid" title="得到了a标签属性">hello</a>
<script>
function getAttr(){
var anode=document.getElementById("aid");
var attr=anode.getAttribute("title");//获取元素属性,可以把title换成id
alert(attr);
}
getAttr();
</script> <br />
<a id="aid2">aid2</a>
<script>
function setAttr(){
var anode=document.getElementById("aid2");
anode.setAttribute("title","动态设置a的tiltle属性");//设置元素属性
var attr=anode.getAttribute("title");
alert(attr);
}
setAttr();
</script> <br>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
<script>
function getChildNode(){
var childnode=document.getElementsByTagName("ul")[0].childNodes;//访问子节点
alert(childnode.length); //答案是7,是因为有空白项
alert(childnode[1].nodeType);
}
getChildNode();
</script> <br />
<div id="div">
<p id="pid">div的p元素</p>
</div>
<script>
function getParentNode(){
var div =document.getElementById("pid");
alert(div.parentNode.nodeName); //获取父节点
}
getParentNode(); function createNode(){
var body=document.body;
var input=document.createElement("input");
input.type="button";
input.value="创建节点";
body.appendChild(input);
}
createNode(); 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(); function removeNode(){
var div=document.getElementById("div");
var p=div.removeChild(div.childNodes[1]);//删除节点
}
removeNode(); function getSize(){ //网页尺寸
var height=document.body.offsetHeight||document.documentElement.offsetHeight;
var width=document.body.offsetWidth;
alert(width+","+height);
}
getSize();
</script>
</body>
</html>
JS DOM对象控制HTML元素详解的更多相关文章
- javascript - DOM对象控制HTML元素详解
1.方法 getElementsByName() -- 获取name getElementByTagName() -- 获取 getAttribute() --获取元素属性 se ...
- web前端学习(四)JavaScript学习笔记部分(7)-- JavaScript DOM对象控制HTML元素详解
1.方法 getElementsByName() 获取name 可以获取一个数组类型数据(参数加引号) getElementsByTagName() 获取元素 getAttribute() 获取元 ...
- 4.8.2.JSDOM对象控制HTML元素详解
1 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title ...
- JS DOM 来控制HTML元素
JS DOM 来控制HTML元素 (ps:这个有很多方法,挑一些详解,嘻嘻) 1.getElementsByName():获取name. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ...
- jQuery 源码解析(二十二) DOM操作模块 复制元素 详解
本节说一下DOM操作模块里的复制元素子模块,该模块可以复制一个DOM节点,并且可选择的设置是否复制其数据缓存对象(包含事件信息)和是否深度复制(子孙节点等),API如下: $.clone(elem, ...
- jQuery 源码分析(二十一) DOM操作模块 删除元素 详解
本节说一下DOM操作模块里的删除元素模块,该模块用于删除DOM里的某个节点,也可以理解为将该节点从DOM树中卸载掉,如果该节点有绑定事件,我们可以选择保留或删除这些事件,删除元素的接口有如下三个: e ...
- jQuery 源码分析(二十) DOM操作模块 插入元素 详解
jQuery的DOM操作模块封装了DOM模型的insertBefore().appendChild().removeChild().cloneNode().replaceChild()等原生方法.分为 ...
- 二、JavaScript语言--JS基础--JavaScript进阶篇--DOM对象 控制HTML元素
1.认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 先来看看下面 ...
- jQuery 源码解析(二十四) DOM操作模块 包裹元素 详解
本节说一下DOM操作模块里的包裹元素子模块,该模块可将当前匹配的元素替换指定的DOM元素,有如下方法: wrap(html) ;在每个匹配元素的外层添加一层DOM元素 ...
随机推荐
- Jenkins是什么?
Jenkins 是一个可扩展的持续集成引擎. 主要用于: l 持续.自动地构建/测试软件项目. l 监控一些定时执行的任务. Jenkins拥有的特性包括: l 易于安装-只要把jenkins.war ...
- 迷你MVVM框架 avalonjs 1.1发布
本版本添加了许多有用的功能,得益于用户量的增大,一些隐性BUG也暴露出来Fix掉了.强烈建议升级! 优化扫描流程: ms-skip(0) --> ms-important(1) --> m ...
- aria2自动更新BT Tracker服务器列表脚本
vi /root/trackers-list-aria2.sh 内容如下: #!/bin/bash #/usr/sbin/service aria2 stop list=`wget -qO- http ...
- Python运维开发基础04-语法基础
上节作业回顾(讲解+温习90分钟) #!/usr/bin/env python3 # -*- coding:utf-8 -*- # author:Mr.chen # 仅用列表+循环实现"简单 ...
- Kubernetes集群的安装部署
此文参照https://www.cnblogs.com/zhenyuyaodidiao/p/6500830.html,并根据实操过程略作修改. 1.环境介绍及准备: 1.1 物理机操作系统 物理机操作 ...
- 116. Populating Next Right Pointers in Each Node (Tree; WFS)
Given a binary tree struct TreeLinkNode { TreeLinkNode *left; TreeLinkNode *right; TreeLinkNode *nex ...
- 2018,学会python 在新公司扎根
五月份跳槽了,来新公司,是个跟我之前业务完全不同的行业,偏硬件,可是对硬件没有什么概念.而且自己都不知道从哪里下手的感觉.终于明白自己在上家公司已经将人待的生了锈,我们庆幸,也许还是不晚的. 执行学习 ...
- Spring分配置文件开发
---------------------siwuxie095 Spring 分配置文件开发 Spring 分配置文件开 ...
- set 续3
-------siwuxie095 set 技巧高级篇: 1.利用 set /a 进行赋值 在开启变量延迟情况下,要判断数组 S!n! 的值的情况, 不 ...
- MySQL学习2---索引
MySQL 索引 MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度. 索引分单列索引和组合索引.单列索引,即一个索引只包含单个列,一个表可以有多个单列索引, ...