H5新增API

选择器

querySelector()querySelectorAll(),参数都是css选择器,前者返回符合条件的第一个匹配的元素,如果没有则返回Null,后者返回符合筛选条件的所有元素集合,如果没有符合筛选条件的则返回空数组。

getElementsByClassName()返回一个类似数组的对象,包含了所有指定 class 名称的子元素。当调用发生在document对象上时, 整个DOM都会被搜索, 包含根节点,也可以在任意元素上调用。

document.querySelector('div');     //选择第一个div
document.body.querySelector('p')[0]; //body下第一个p标签 document.getElementsByClassName('red test');
//获取所有 class 同时包括 'red' 和 'test' 的元素

classList属性

  • length: 返回class数量。
  • add(class1, class2, ...):将给定的字符串值添加到列表中。如果值已经存在,就不添加了。
  • contains(class):表示列表中是否存在给定的value值,如果存在则返回true,不存在则返回false
  • remove(class1, class2, ...):移除元素中一个或多个类名,移除不存在的类名不会报错。
  • item(index):返回指定索引值的类名,index为数字(从0开始),索引不在范围内返回null,不为数字会被转成数字类型再取整数部分,若转换失败返回第一个类名。
  • toggle(value,true || false):将值为valueclass在添加和移除之间切换。

classList 属性返回的是一个 DOMTokenList 对象。此属性不兼容IE10以下版本。

Object.prototype.toString.call(node.classList);
//'[object DOMTokenList]'

相对应 className 属性,可以设置或返回元素的 class 。返回的是字符串类型,设置会把原来的 class 值完全覆盖。语法:node.className = className

<div class='wrap box'></div>

let oDiv = document.querySelector('div');
console.log(oDiv.className); //'wrap box'
oDiv.className = 'class1';
console.log(oDiv.className); //'class1'

data属性

新的HTML5标准允许在普通的元素标签里,嵌入类似data-*的属性,来实现一些简单数据的存取。它的数量不受限制,并且也能由js动态修改,也支持CSS选择器。

getAttributesetAttribute存取dataset

<div data-id='10' data-name='box'></div>
<script
node.getAttribute('data-id');
node.setAttribute('data-name','test');
</script>

通过.dataset API 存取dataset。它返回一个对象,可以通过node.dataset.name的形式新增或修改。

node.dataset.name = 'test';

内容可编辑

加有contenteditable属性的元素,点击可以编辑。此属性为布尔属性

<div contenteditable=true>
<p>i am editable</p>
<p>i am editable too</p>
</div>

本地存储

localStorage sessionStorageJavascript本地存储小结

scrollIntoView()

Element.scrollIntoView() 方法让当前的元素滚动到浏览器窗口的可视区域内。scrollIntoView MDN

参数为一个布尔值,为true,元素的顶端将和其所在滚动区的可视区域的顶端对齐;如果为false,元素的底端将和其所在滚动区的可视区域的底端对齐。

element.scrollIntoView(); // 等同于element.scrollIntoView(true)

本文转载于:猿2048https://www.mk2048.com/blog/blog.php?id=hb1hahik2jb

H5新增API的更多相关文章

  1. H5新增API和操作DOM

    博客原文:https://dobinspark.com.cn/ H5-dom扩展 获取元素 document.getElementsByClassName ('class'); //通过类名获取元素, ...

  2. h5新API之WebStorage解决页面数据通信问题

    localStorage相信大家都不陌生,今天我们要讨论的不是怎么存储数据,获取数据.而是看看WebStorage的一些妙用,相信大家在开发中遇到过这样一个场景,一个页面中嵌套一个iframe,ifr ...

  3. h5新增标签及css3新增属性

    - h5新增的标签 新增元素 说明 video 表示一段视频并提供播放的用户界面 audio 表示音频 canvas 表示位图区域 source 为video和audio提供数据源 track 为vi ...

  4. H5新增属性classList

    H5新增属性classList h5中新增了一个classList,原生js可以通过它来判断获取dom节点有无某个class. classList是html元素对象的成员,它的使用非常简单,比如 co ...

  5. H5新增特性

    1.pattern:写正则,但是需要和form表单连着用 2.WebSocket "网络套接字", 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议.在 W ...

  6. 对飞猪H5端API接口sign签名逆向实验

    免责声明 本文章所提到的技术仅用于学习用途,禁止使用本文章的任何技术进行发起网络攻击.非法利用等网络犯罪行为,一切信息禁止用于任何非法用途.若读者利用文章所提到的技术实施违法犯罪行为,其责任一概由读者 ...

  7. 对iOS10新增Api的详细探究

    本文主要是一些对iOS新功能的探索,之前发现博客里关于iOS新功能的分析大多是过于概括,每个功能几句话,无法了解到具体的功能.所以本次的探索是基于Api层面,着重看一些具体用法所做的笔记,本来想分别画 ...

  8. Uiautomator 2.0之UiDevice新增API学习小记

    1. InstrumentationRegistry类 1.1. 类说明: 一个暴露的注册实例,持有instrumentation运行的进程和参数,还提供了一种简便的方法调用instrumentati ...

  9. web语义化与h5新增标签

    Web语义化就是html告诉我们也告诉机器这一块是什么内容,例如:“这行是一个标题,这几行组成一个段落,这是一个列表,那是一个链接.”   Web语义化有三个阶段: 1.h1~h6.thead.ul. ...

随机推荐

  1. 如何设置计算机IP地址

    今天公司变更网络环境让同学们设置IP地址,我竟然不会,我问了一句IP还能自己设置啊,.low爆了,于是赶紧百度,现总结如下 IP地址的设置一种是静态IP,一种是自动获取IP(之前都是自动获取的吧,而且 ...

  2. Python面向对象之数据封装的应用及配置文件

    面向对象封装的应用 1.配置文件 1.1 ini配置文件 ini 文件是Initialzation File的缩写,平时用于存储软件的配置文件.例如:MySQL数据库的配置文件(my.ini) [my ...

  3. Laravel 自定命令以及生成文件

    以创建service层为例子 1.执行命令 php artisan make:command ServiceMakeCommand 2.在app\Console\Commands 下就会多出一个 Se ...

  4. 面试题详解:如何用Redis实现分布式锁?

    说一道常见面试题: 使用Redis分布式锁的详细方案是什么? 一个很简单的答案就是去使用 Redission 客户端.Redission 中的锁方案就是 Redis 分布式锁的比较完美的详细方案. 那 ...

  5. 20192204李龙威 2019-2020-2 《Python程序设计》实验一报告

    20192204 2019-2020-2 <Python程序设计>实验一报告 课程:<Python程序设计> 班级: 1922 姓名: 李龙威 学号:20192204 实验教师 ...

  6. 记录一次SQL函数和优化的问题

    一.前言 上次在年前快要放假的时候记录的一篇安装SSL证书的内容,因为当时公司开始居家办公了,我也打算回个家 毕竟自己在苏州这半年一个人也是很想家的,所以就打算年过完来重新写博客.不巧的是,当时我2月 ...

  7. 想让DBA瞬间崩溃,那就让他去做SQL性能优化

    摘要:很多大数据计算都是用 SQL 实现的,跑得慢时就要去优化 SQL,但常常碰到让人干瞪眼的情况. 本文分享自华为云社区<做 SQL 性能优化真是让人干瞪眼>,作者: 石臻臻的杂货铺 . ...

  8. 网络编程 并发socketserver

    网络编程 并发socketserver ipv4.ipv6 ip协议:规定网络地址的协议 B/S架构 C/S架构 bs是cs的一种 B/S是浏览器和服务端架构 C/S是客户端和服务端架构 osi七层协 ...

  9. 前端知识之html基础

    前端知识之html内容 web服务本质 浏览器发送请求-->http协议-->服务端接收请求-->服务端返回响应-->服务端把html文件内容发给浏览器-->浏览器渲染页 ...

  10. SP接口的全双工首发接口整合

    unsigned char bits = 8; unsigned int speed = 50000; unsigned short delay; static void spi_transfer_d ...