javascript权威指南第11章 DOM扩展
//javascript 权威指南 第三版 第11章 DOM扩展
//取得body元素
var body = document.querySelector("body"); //取得ID为myDiv 元素
var myDiv = document.querySelector("#myDiv");
//取得类为selected 的第一个元素
var selected = document.querySelector(".selected");
//取得类为 button 的第一个图像元素
var img = document.body.querySelector("img.button"); //取得某div中的所有<em> 元素 类似于getElmenetsByTageNmae("em")
var ems = document.getElementById("myDiv").querySelectorAll("em"); //取得类为 selected 的所有元素
var selecteds = document.querySelectorAll(".selected"); //取得所有p 元素中所有strong 元素
var strongs = document.querySelectorAll("p strong"); //获取 p 标签下 strong 元素 var i, len, strong; for (i = 0, len = strongs.length; i < len; i++) {
strong = strongs[i];
strong.className = "important";
}
//元素是否匹配,如果是返回true
document.body.MatchesSelector("body .page1"); //11.2 元素遍历 var element = document.body;
var i, len, child = element.firstChild;
while (child != element.lastChild) {
if (child.nodeType == 1) { //检查是不是元素
processChild(child);
}
child = child.nextSibling; //节点后的下一个(紧挨)节点
} //11.3 HTML5
//取得所有类中包含 username 和 current 的元素,类名先后顺序无所谓
var allCurrentUsernames = document.getElementsByClassName("username current"); //取ID 为 mydiv 的元素中带有类名 selected 的所有元素
var selected = document.getElementById("mydiv").getElementsByClassName("selected"); var div = document.getElementById("div");
div.classList.remove("disabled"); //移除类
div.classList.add("current"); //添加类
div.classList.toggle("user"); //切换类 if (div.contains("bd") && !div.classList.contains("disabled")) {
//执行操作
}
//迭代类名
for (var i = 0, len = div.classList.length; i < len; i++) {
//操作
} //11.3.2 焦点管理
var button = document.getElementById("mybutton");
button.focus();
if (document.activeElement == button) {
//true; 判定文档激活的节点
} //11.3.5 自定义数据属性
//<div id="mydiv" data-appId="12345" data-myname="Nicholas" ></div>
var div = document.getElementById("div");
//获取自定义属性值
var appId = div.dataset.appId;
var myname = div.dataset.myname; //设置值
div.dataset.appId = 23556;
div.dataset.myname = "Michael"; //判定自定义属性是否存在
if (div.dataset.myname) { }
// scrollIntoView 方法是Html提供的标准方法,将元素移入视图内
function scrollDiv() {
var div = document.getElementById("myDiv");
div.scrollIntoView(); //滚动到可见视图
div.scrollIntoViewIfNeeded(true); //alignCenter=true 显示在视图窗口中部垂直方向
//只有当元素不可见的情况下执行,如果在可见情况下不执行
div.scrollByLines(30); // lineCount 将元素的内容滚动指定行高
div.scrollByPages(1); // pageCount 将元素的内容滚动指定页面高度,具体高度由元素高度决定。
}
//<div id="topDiv" style="height:800px;">
//<input type="button" onclick="scrollDiv();">
//</div>
//<div id="myDiv">
//<ul>
// <li></li>
//<li></li>
//<li></li>
//</ul>
//</div>
javascript权威指南第11章 DOM扩展的更多相关文章
- 【笔记】javascript权威指南-第六章-对象
对象 //本书是指:javascript权威指南 //以下内容摘记时间为:2013.7.28 对象的定义: 1.对象是一种复合值:将很多值(原始值或者对象)聚合在一起,可以通过名字访问这些值. ...
- 【笔记】javascript权威指南-第三章-类型,值和变量
javascript中的原始类型和对象类型(基本类型和引用类型) //本书是指:javascript权威指南 //以下内容摘记时间为:2013.7.27 计算机程序运行时需要对值(value ...
- javascript权威指南第13章 事件示例代码
html 部分 <!DOCTYPE html> <html> <head> <title>Event Bubling Example</title ...
- javascript权威指南第16章 HTML5脚本编程
<!DOCTYPE html> <html> <head> <script type="text/javascript" src=&quo ...
- javascript权威指南第15章 使用Canvas绘图
HTML <!DOCTYPE html> <html> <head> <title>canvas</title> </head> ...
- javascript权威指南第14章 表单脚本示例代码
HTML部分 <!DOCTYPE html> <html> <head> <title></title> </head> < ...
- JavaScript权威指南--第3章 类型、值和变量
在编程语言中,能够表示并操作的值(value)的类型称作数据类型(type).使用变量来储存值.JavaScript中数据类型有两种:原始类型(primitive type/基本数据类型)和对象类型( ...
- JavaScript权威指南第02章 词法结构
词法结构 2.1字符集 JavaScript 是Unicode字符集编写,差点儿支持地球上全部的语言. 2.1.1区分大写和小写 javascript是区分大写和小写的语言. 2.1.2 空格.换行符 ...
- JavaScript权威指南第01章 JavaScript 概述
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/huangbin10025/article/details/27951767 JavaScript 概 ...
随机推荐
- 【工具】java发送验证码邮件
文章目录 前言 配置邮箱服务器 代码实现 发送随机验证码与验证 后记 前言 要实现 可以设置格式,附件,抄送等功能,就跟真人操控邮箱发送邮件一样的功能,或许比较难,博主没研究,博主暂时没用到那些功能, ...
- 『Python基础』第7节:基本运算符
一. 基本运算符 运算按种类可以分为: 算数运算.比较运算.逻辑运算.赋值运算.成员运算.身份运算.位运算. 今天我们只学习算数运算.比较运算.逻辑运算.赋值运算.成员运算 1.1 算数运算 以下假设 ...
- PowerBuilder学习笔记之2PowerScript语言(二)
z教材地址:https://wenku.baidu.com/view/1e82d26925c52cc58ad6be05.html?sxts=1565679996440 2.4数组 声明数组:Integ ...
- Istio最佳实践:在K8s上通过Istio服务网格进行灰度发布
Istio是什么? Istio是Google继Kubernetes之后的又一开源力作,主要参与的公司包括Google,IBM,Lyft等公司.它提供了完整的非侵入式的微服务治理解决方案,包含微服务的管 ...
- 手动编译ts的经过
动机 以前写ts或者es6,都是用在脚手架搭建的项目中,比如vue和react,当时当我识图写一个ts的demo的,我还要创建一个完整的vue或者react项目?明显不合适,那就要研究一下如何手动搭建 ...
- html页面在苹果手机内,safari浏览器,微信中滑动不流畅问题解决方案
1. -webkit-overflow-scrolling:touch是什么? MDN上是这样定义的: -webkit-overflow-scrolling 属性控制元素在移动设备上是否使用滚动回弹效 ...
- 在论坛中出现的比较难的sql问题:20(触发器专题2)
原文:在论坛中出现的比较难的sql问题:20(触发器专题2) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了. 所以,觉得有必要记录下 ...
- Python之网格搜索与检查验证-5.2
一.网格搜索,在我们不确定超参数的时候,需要通过不断验证超参数,来确定最优的参数值.这个过程就是在不断,搜索最优的参数值,这个过程也就称为网格搜索. 二.检查验证,将准备好的训练数据进行平均拆分,分为 ...
- vs项目模板创建和使用
一.使用dotnet命令创建(适用于.NET Core,可以创建包含任意数量个项目的模板,但不会出现在vs的新建项目模板中) 官方文档:https://docs.microsoft.com/zh-cn ...
- Queryable查询扩展
/// <summary> /// 查询扩展 /// </summary> /// <typeparam name="T"></typep ...