javascript通过元素id和name直接取得元素的方法


Posted in Javascript onApril 28, 2015

本文实例讲述了javascript通过元素id和name直接取得元素的方法。分享给大家供大家参考。具体分析如下:

我们知道一些第三方的js库对如何快速选取html中的元素做了一些简化,貌似十分高深莫测,其实也不然。而且js本身自带了对于特殊元素的简便选取的方法,下面就为大家简单介绍下。

在html中,一般最直接的辨别html元素使用的是name和id属性,两者有着细微的不同:id必须页面唯一,但name可以有重复。

在js中如果id名称不和内置属性或全局变量重名的话,该名称自动成为window对象的属性,而在一个html页面中的最顶层环境中有:

this === window

所以如果我们写一个如下的html元素代码就可以这样引用它:

<input type="button" id="btn_ok" value="Ok" onclick="..." />
//可以这样引用
btn_ok.onclick = function(){};
//或者下面也是一样的
window.btn_ok.style = ...;

对于name属性来说,只有某些类型的html元素具有类似的方法,比如:form,img,iframe,applet,embed,object等。在这些元素中可以通过全局变量或者document的属性来访问特定name属性的元素;如果相同name属性的有多个元素,则返回一个NodeList的类似只读数组的对象,例如如下代码:

<div>
  <img name="pic" src="#" alt="pic_0" />
  <img name="pic" src="#" alt="pic_1" />
  <img name="pic" src="#" alt="pic_2" />
</div>
//我们可以这样引用name为pic的元素:
for(x in pic)
 console.log(pic[x].alt);
//或者是非"标准"语法each语句方式
for each(img in pic)
 console.log(img.alt);

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
封装了一个js图片轮换效果的函数
Sep 28 Javascript
JQuery判断子iframe何时加载完成解决方案
Aug 20 Javascript
ExtJS4中使用mixins实现多继承示例
Dec 03 Javascript
Jquery1.9.1源码分析系列(六)延时对象应用之jQuery.ready
Nov 24 Javascript
JavaScript知识点总结(十)之this关键字
May 31 Javascript
Ajax验证用户名或昵称是否已被注册
Apr 05 Javascript
原生JS+Canvas实现五子棋游戏实例
Jun 19 Javascript
jQuery实现菜单栏导航效果
Aug 15 jQuery
JavaScript使用atan2来绘制箭头和曲线的实例
Sep 14 Javascript
Node.js进阶之核心模块https入门
May 23 Javascript
vue利用v-for嵌套输出多层对象,分别输出到个表的方法
Sep 07 Javascript
ES6中的class是如何实现的(附Babel编译的ES5代码详解)
May 17 Javascript
javascript中in运算符用法分析
Apr 28 #Javascript
setTimeout内不支持jquery的选择器的解决方案
Apr 28 #Javascript
chrome不支持form.submit的解决方案
Apr 28 #Javascript
javascript截取字符串小结
Apr 28 #Javascript
JavaScript 实现完美兼容多浏览器的复制功能代码
Apr 28 #Javascript
jQuery通过Ajax返回JSON数据
Apr 28 #Javascript
javascript实现控制文字大中小显示
Apr 28 #Javascript
You might like
用php和MySql来与ODBC数据连接
2006/10/09 PHP
Yii查询生成器(Query Builder)用法实例教程
2014/09/04 PHP
html下载本地
2006/06/19 Javascript
prototype1.4中文手册
2006/09/22 Javascript
javascript实现仿银行密码输入框效果的代码
2007/12/13 Javascript
JavaScript 弹出窗体点击按钮返回选择数据的实现
2010/04/01 Javascript
ASP中Sub和Function的区别说明
2020/08/30 Javascript
简单谈谈node.js 版本控制 nvm和 n
2015/10/15 Javascript
很棒的Bootstrap选项卡切换效果
2016/07/01 Javascript
判断输入的字符串是否是日期格式的简单方法
2016/07/11 Javascript
微信小程序 动态的设置图片的高度和宽度详解及实例代码
2017/02/24 Javascript
React-router 4 按需加载的实现方式及原理详解
2017/05/25 Javascript
11行JS代码制作二维码生成功能
2018/03/09 Javascript
vue自定义指令用法经典实例小结
2019/03/16 Javascript
javascript系统时间设置操作示例
2019/06/17 Javascript
javascript的惯性运动实现代码实例
2019/09/07 Javascript
vue缓存之keep-alive的理解和应用详解
2020/11/02 Javascript
[01:02:10]DOTA2上海特级锦标赛B组小组赛#2 VG VS Fnatic第一局
2016/02/26 DOTA
[52:22]EG vs VG Supermajor小组赛B组 BO3 第一场 6.2
2018/06/03 DOTA
Python程序设计入门(5)类的使用简介
2014/06/16 Python
python语言中with as的用法使用详解
2018/02/23 Python
python3实现域名查询和whois查询功能
2018/06/21 Python
python3 json数据格式的转换(dumps/loads的使用、dict to str/str to dict、json字符串/字典的相互转换)
2019/04/01 Python
解决Jupyter Notebook使用parser.parse_args出现错误问题
2020/04/20 Python
W3C公布最新的HTML5标准草案
2008/10/17 HTML / CSS
为你的html5网页添加音效示例
2014/04/03 HTML / CSS
Bose加拿大官方网站:美国知名音响品牌
2019/03/21 全球购物
澳大利亚优质的家居用品和生活方式公司:Bed Bath N’ Table
2019/04/16 全球购物
医学院学生求职简历的自我评价
2013/10/24 职场文书
高级销售求职信
2014/02/21 职场文书
三好学生个人先进事迹材料
2014/05/17 职场文书
无财产离婚协议书范本
2014/10/28 职场文书
质量整改报告范文
2014/11/08 职场文书
火锅店的开业营销方案范本!
2019/07/05 职场文书
javascript遍历对象的五种方式实例代码
2021/10/24 Javascript
吉利入股戴姆勒后smart“长大了”
2022/04/21 数码科技