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 全等号运算符使用说明
May 31 Javascript
JS操作数据库的实例代码
Oct 17 Javascript
JavaScript实现网页截图功能
Oct 16 Javascript
浅谈JS日期(Date)处理函数
Dec 07 Javascript
javascript实现微信分享
Dec 23 Javascript
jQuery中after()方法用法实例
Dec 25 Javascript
使用javascript实现简单的选项卡切换
Jan 09 Javascript
ArtEditor富文本编辑器增加表单提交功能
Apr 18 Javascript
微信小程序 sha1 实现密码加密实例详解
Jul 06 Javascript
vue resource post请求时遇到的坑
Oct 19 Javascript
基于jQuery实现Ajax验证用户名是否可用实例
Mar 25 jQuery
Vue引入Stylus知识点总结
Jan 16 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数组中删除元素的实现代码
2012/06/22 PHP
Laravel 5+ .env环境配置文件详解
2020/04/06 PHP
javascript中的delete使用详解
2013/04/11 Javascript
顶部缓冲下拉菜单导航特效的JS代码
2013/08/27 Javascript
jquery左右滚动焦点图banner图片鼠标经过显示上下页按钮
2013/10/11 Javascript
jQuery使用之标记元素属性用法实例
2015/01/19 Javascript
jQuery实现带滚动导航效果的全屏滚动相册实例
2015/06/19 Javascript
基于javascript实现图片切换效果
2016/04/17 Javascript
Bootstrap每天必学之弹出框(Popover)插件
2016/04/25 Javascript
浅析Bootstrap验证控件的使用
2016/06/23 Javascript
JS简单测试循环运行时间的方法
2016/09/04 Javascript
详解jQuery中的DOM操作
2016/12/23 Javascript
Javascript中for循环语句的几种写法总结对比
2017/01/23 Javascript
Bootstrap3 模态框使用实例
2017/02/22 Javascript
JS实现基于Sketch.js模拟成群游动的蝌蚪运动动画效果【附demo源码下载】
2017/08/18 Javascript
基于Vue制作组织架构树组件
2017/12/06 Javascript
vue+jquery+lodash实现滑动时顶部悬浮固定效果
2018/04/28 jQuery
vue-video-player 通过自定义按钮组件实现全屏切换效果【推荐】
2018/08/29 Javascript
JS中使用react-tooltip插件实现鼠标悬浮显示框
2019/05/15 Javascript
解决layui 表单元素radio不显示渲染的问题
2019/09/04 Javascript
Openlayers实现扩散的动态点(水纹效果)
2020/08/17 Javascript
微信小程序实现底部弹出模态框
2020/11/18 Javascript
[01:07:13]TNC vs Pain 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
TensorFlow如何实现反向传播
2018/02/06 Python
Python 实现数据结构中的的栈队列
2019/05/16 Python
python的几种矩阵相乘的公式详解
2019/07/10 Python
python jenkins 打包构建代码的示例代码
2019/11/29 Python
django-crontab实现服务端的定时任务的示例代码
2020/02/17 Python
Python模拟键盘输入自动登录TGP
2020/11/27 Python
神路信息Java面试题目
2013/03/31 面试题
中年人生感言
2014/02/04 职场文书
物理课外活动总结
2014/08/27 职场文书
幸福家庭事迹材料
2014/12/20 职场文书
Win11 引入 Windows 365 云操作系统,适应疫情期间混合办公模式:启动时直接登录、模
2022/04/06 数码科技
如何使用SQL Server语句创建表
2022/04/12 SQL Server
MySQL数据库中的锁、解锁以及删除事务
2022/05/06 MySQL