javascript引用对象的方法


Posted in Javascript onJanuary 11, 2007

<a id="link1" name="link1" href="http://bbs.51js.com/">51js</a>

=============
同一页面内的引用方法:

1、使用id:

link1.href

2、使用name:

document.all.link1.href

3、使用sourseIndex:

document.all(4).href //注意,前面还有HTML、HEAD、TITLE和BODY,所以是4

4、使用链接集合:

document.anchors(0).href //全部的集合有all、anchors、applets、areas、attributes、behaviorUrns、bookmarks、boundElements、cells、childNodes、children、controlRange、elements、embeds、filters、forms、frames、images、imports、links、mimeTypes、options、plugins、rows、rules、scripts、styleSheets、tBodies、TextRectangle,请参考MSDN介绍。其实方法3和方法4是一样使用的集合,只是一个是all,可以包括页面所有标记,而anchors只包括链接。

5、getElementById:

document.getElementById("link1").href

6、getElementsByName:

document.getElementsByName("link1")[0].href //这也是一个集合,是所有name等于该方法所带参数的标记的集合

7、getElementsByTagName:

document.getElementsByTagName("A")[0].href //这也是一个集合,是所有标记名称等于该方法所带参数的标记的集合

8、tags集合:

document.all.tags("A")[0].href //与方法7一样是按标记名称取得一个集合

除此之外,event.scrElement可以获得触发时间的标记的引用;document.elementFromPoint(x,y)可以获得x和y坐标处的元素的引用;document.body.componentFromPoint(event.clientX,event.clientY)可以获得鼠标所在处元素的引用;还可以通过元素的父子节点和兄弟节点关系来引用,如nextSibling(当前节点的后一节点)、previousSibling(当前节点的前一节点)、childNodes、children、firstChild、lastChild、parentElement等都是父子节点和兄弟节点的一些引用;还不仅限于此。

上面是同一页面内的常见引用方法,另外还涉及到不同页面中的

=============
对于分帧的页面,可以使用parent.frames("帧的name")、top.frames("帧的name")来引用不同的帧,后面的引用和同一页面内市相同的,多重的parent也是支持的。
例如:
parent.frames("frame1").document.all.link1
top.frames("frame1").document.all.link1

=============
对于window.open()开的窗口,可以使用var newwin=window.open(),然后使用newwin来引用新窗口,后面的引用和同一页面内是相同的;新窗口可以使用window.opener来引用打开它的窗口,可以简写作opener,例如:
var newwin=window.open()
父窗口(这里是使用window.open()方法的窗口):
newwin.document.all.link1 //父窗口这句可引用新窗口中的对象
子窗口(window.open()方法打开的窗口):
opener.document.all.link1 //子窗口这句可引用父窗口的对象

多重opener也是支持的,例如:opener.opener.document.all.link1 

方法多种多样,有时候需要根据具体的情况而定,灵活运用才可以游刃有余。

Javascript 相关文章推荐
javascript算法学习(直接插入排序)
Apr 12 Javascript
jquery调用wcf并展示出数据的方法
Jul 07 Javascript
封装html的select标签的js操作实例
Jul 02 Javascript
浅谈javascript的分号的使用
May 12 Javascript
jQuery+PHP星级评分实现方法
Oct 02 Javascript
jQuery实现花式轮播之圣诞节礼物传送效果
Dec 25 Javascript
bootstrapValidator.min.js表单验证插件
Feb 09 Javascript
详解angular用$sce服务来过滤HTML标签
Apr 11 Javascript
bootstrap table方法之expandRow-collapseRow展开或关闭当前行数据
Aug 09 Javascript
babel7.x和webpack4.x配置vue项目的方法步骤
May 12 Javascript
微信小程序实现form表单本地储存数据
Jun 27 Javascript
easyUI使用分页过滤器对数据进行分页操作实例分析
Jun 01 Javascript
一份老外写的XMLHttpRequest代码多浏览器支持兼容性
Jan 11 #Javascript
javascript基础的动画教程,直观易懂
Jan 10 #Javascript
JS宝典学习笔记(下)
Jan 10 #Javascript
js宝典学习笔记(上)
Jan 10 #Javascript
javascript编程起步(第七课)
Jan 10 #Javascript
javascript编程起步(第六课)
Jan 10 #Javascript
javascript编程起步(第五课)
Jan 10 #Javascript
You might like
PHP中的串行化变量和序列化对象
2006/09/05 PHP
PHP 编写的 25个游戏脚本
2009/05/11 PHP
微信扫描二维码登录网站代码示例
2013/12/30 PHP
windows平台中配置nginx+php环境
2015/12/06 PHP
PHP实现文件上传与下载实例与总结
2016/03/13 PHP
php的常量和变量实例详解
2017/06/27 PHP
鼠标事件延时切换插件
2011/03/12 Javascript
在IE和VB中支持png图片透明效果的实现方法(vb源码打包)
2011/04/01 Javascript
javascript时间自动刷新实现原理与步骤
2013/01/06 Javascript
jQuery拖动div、移动div、弹出层实现原理及示例
2014/04/08 Javascript
jquery实现预览提交的表单代码分享
2014/05/21 Javascript
nodejs 提示‘xxx’ 不是内部或外部命令解决方法
2014/11/20 NodeJs
jQuery的几个我们必须了解的特点
2015/05/03 Javascript
仿iframe效果Aajx文件上传实例
2016/11/18 Javascript
bootstrap IE8 兼容性处理
2017/03/22 Javascript
vue loadmore 组件滑动加载更多源码解析
2017/07/19 Javascript
Vue.js中的图片引用路径的方式
2017/07/28 Javascript
jQuery实现腾讯信用界面(自制刻度尺)样式
2017/08/15 jQuery
JS实现点击按钮随机生成可拖动的不同颜色块示例
2019/01/30 Javascript
Seajs源码详解分析
2019/04/02 Javascript
微信小程序Echarts图表组件使用方法详解
2019/06/25 Javascript
react 移动端实现列表左滑删除的示例代码
2019/07/04 Javascript
微信小程序实现音乐播放器
2019/11/20 Javascript
vue实现短信验证码登录功能(流程详解)
2019/12/10 Javascript
python的文件操作方法汇总
2017/11/10 Python
Python数据可视化编程通过Matplotlib创建散点图代码示例
2017/12/09 Python
python内置模块collections知识点总结
2019/12/19 Python
使用Django实现把两个模型类的数据聚合在一起
2020/03/28 Python
Python中如何添加自定义模块
2020/06/09 Python
Python matplotlib 绘制双Y轴曲线图的示例代码
2020/06/12 Python
scrapy redis配置文件setting参数详解
2020/11/18 Python
交通事故私了协议书
2014/04/16 职场文书
2015年技术工作总结范文
2015/04/20 职场文书
就业指导讲座心得体会
2016/01/15 职场文书
MySQL REVOKE实现删除用户权限
2021/06/18 MySQL
nginx配置之并发频次限制
2022/04/18 Servers