1 定义id属性的元素,不获取直接使用

由于id名具有唯一性,部分浏览器支持直接使用id名访问元素,但不是标准方式,生产环境下不推荐使用。

2 元素是对象

获取到的元素是DOM对象 ,DOM对象也有数据类型之分

//html
<div id="box"></div> var box = document.getElementById('box');
console.dir(box); //HTMLDivElement --> 这是div元素在DOM中的对象类型

3 获取页面元素的其他方式

1 根据name属性获取元素 (有兼容问题,不同的浏览器实现不同)

语法: document.getElementsByName('name属性的值')

作用: 在整个文档中查找所有name属性值为传入的值的元素,将这些所有符合条件元素的存放到一个伪数组中返回出来,如果没有就返回一个空的伪数组

//html
<div class="main"></div> //js
var mains = document.getElementsByClassName('main');
//返回一个伪数组
for (var i = 0; i < mains.length; i++) {
var main = mains[i];
console.log(main);
}

2 根据类名获取元素 (有兼容问题,ie9+支持)

语法: document.querySelector('选择器');

作用: 在整个文档中查找所有符合选择器值的元素,但是只返回其中的第一个元素,如果没有返回null

注意: 如果想要所有符合选择器值的元素,请使用 querySelectorAll方法

querySelectorAll返回的是一个伪数组,如果没有则返回空的伪数组

//html
<div class="element">div1</div>
<div class="element">div2</div>
<div class="element">div3</div> //js
//在整个文档中,查找类名为element的元素,
var div = document.querySelector('.element');
console.log(div); //返回的是所有符合条件中的第一个 var divs = document.querySelectorAll('.element');
//返回的是一个伪数组, 伪数组中存储了所有符合条件的元素
for (var i = 0; i < divs.length; i++) {
var box = divs[i];
console.log(box);
}

4 DOM中元素可以使用的获取元素的方法

element.getElementsByTagName('标签名')

element.getElementsByClassName('类名')

element.querySelector('选择器')

element.querySelectorAll('选择器')

//以上这些方法也可以使用获取到的DOM对象调用
//使用document调用这些方法是在整个页面中查找
//使用获取到的DOM对象调用这些方法,是在当前DOM对象的里面查找 //html
<div>中国</div>
<div id="center">
北京
<div>昌平</div>
<div>海淀</div>
</div> //js
var center = document.getElementById('center');
var divs = center.getElementsTagName('div');
console.log(divs); //返回的伪数组中只有昌平和海淀

javascript总结39: 元素获取的常见问题的更多相关文章

  1. javascript相邻节点元素获取

    <script> window.onload = function () { var myLinkItem = document.getElementById('linkItem'); v ...

  2. javascript总结34 :DOM之节点元素获取

    常用节点元素获取: 1. 获取 html -- > document.documentElement 2. 获取 body -- > document.body 3. 获取指定的元素 -- ...

  3. 用javascript实现html元素的增删查改[xyytit]

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. JavaScript 读取修改元素 及 伸拉门案例

    JavaScript 读取修改元素 及 伸拉门案例 版权声明:未经授权,严禁转载! 读取 / 修改元素 - 读取修改元素内容 - 读取修改元素属性 - 读取修改元素样式 元素的内容 读取或修改元素节点 ...

  5. JavaScript HTML DOM元素节点常用操作接口

    在文档对象模型 (DOM) 中,每个节点都是一个对象.DOM 节点有三个重要的属性 : 1. nodeName : 节点的名称 2. nodeValue :节点的值 3. nodeType :节点的类 ...

  6. 获取元素的xpath, 转换xpath为csspath进行jQuery元素获取

    获取元素的xpath, 转换xpath为csspath进行jQuery元素获取 博客分类: 编程心得 jQueryCSSHTML  var $shadow = new Object(); /** 获取 ...

  7. JQuery元素获取

    前言:这是本类别博文JQuery即用即查开篇. 因为查手册太麻烦,而且有时候需要深入命令所在详细页面才能了解此命令的具体作用是什么. 写这几篇文章就是为了,工作遇到问题时,一看这几篇文章就可以查到哪个 ...

  8. JavaScript经典代码【一】【javascript HTML控件获取值】

    javascript HTML控件获取值 1.下拉列表框选定值 ddlPageSize.options[ddlPageSize.selectedIndex].value ddlPageSize.opt ...

  9. JavaScript HTML DOM 元素(节点)

    JavaScript HTML DOM 元素(节点) 创建新的 HTML 元素 创建新的 HTML 元素 如需向 HTML DOM 添加新元素,您必须首先创建该元素(元素节点),然后向一个已存在的元素 ...

随机推荐

  1. 我为什么一直不愿意用bootstrap

    做前端有2年多的时间了,知道bootstrap已经很久了. 第一次了解bootstrap是1年前,公司的一次培训中. 当时感到非常的愤怒,因为对框架的了解不够深入产生了这样的一个想法: 怎么会有这种框 ...

  2. IntelliJ Idea使用scalatest

    背景:作为测试,开发写什么,测试自然就要测什么了,so = = 无scala基础,人较笨,折腾了两天才把环境弄好,如下: 一 IntelliJ Idea下载安装 这个真心是最简单的了 https:// ...

  3. NIO buffer 缓冲区 API

    package bhz.nio.test; import java.nio.IntBuffer; public class TestBuffer { public static void main(S ...

  4. TortoiseSVN/Git覆盖图标失效的解决方案

    之前在电脑上安装了TortoiseGit和TortoiseSVN这两种版本控制,使用一段时间之后发现,这两种版本控制的覆盖图标都无法显示,起初以为是git和svn使用的图标的不一样,有冲突,导致这两种 ...

  5. 3.Redis 数据类型

    转自:http://www.runoob.com/redis/redis-tutorial.html Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集 ...

  6. spring-boot-starter-security Spring Boot中集成Spring Security

    spring security是springboot支持的权限控制系统. security.basic.authorize-mode 要使用权限控制模式. security.basic.enabled ...

  7. java多线程-慎重使用volatile关键字

    Java语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量.这两种机制的提出都是为了实现代码线程的安全性.其中 Volatile 变量的同步性较差(但有时它更简单并且开销更低),而 ...

  8. MySQL内置功能之事务、函数和流程控制

    主要内容: 一.事务 二.函数 三.流程控制 1️⃣  事务 一.何谓事务? 事务用于将某些操作的多个SQL作为原子性操作,一旦有某一个出现错误,即可回滚到原来的状态,从而保证数据库数据完整性. # ...

  9. 手动为 Team Foundation Server 安装 SQL Server

    本主题中的步骤适用于安装 SQL Server 2012 企业版,你也可以使用安装标准版的相同步骤. 适用于 SQL 2014 的步骤与以上步骤也非常相似. 我们将在 TFS 所在的同一服务器上安装 ...

  10. python 数值计算库

    pip install numpy pip install matplotlib pip install sklearn yum -y install tkinter pip install scip ...