当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 取得父标签

Javascript
js类后台管理菜单类-MenuSwitch
符合标准的js表单提交的代码
js实现的层变换效果
一个js随机颜色脚本(用于标签页面,也可用于任何页面)
轻松实现HTML和JS之间的转化的代码
完整显示当前日期和时间的JS代码
写了个XML+Tree无穷树js版
指定js可访问其它域名的cookie的方法
惰性函数定义模式 使用方法
从阿里妈妈发现的几个不错的表单验证函数
js定义对象简单学习例子
js的with语句使用方法
js有效数字 显示指定位数
js 生成密匙流 脚本代码
js使用对象直接量创建对象的代码
百度前台js笔试题与答案
用JS输入email的代码,以防垃圾邮件
一种让页面完全把过来显示的脚本代码
让getElementsByName适应IE和firefox的方法
奇妙的js

Javascript 中的 取得父标签


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 286 ::
收藏到网摘: n/a

取得父标签
FF 下没有 event
用 arguments[0]
FF 下没有 srcElement
用 target
FF 下没有 parentElement
用 parentNode
复制代码 代码如下:

function obj_event_onsomething(e){
var e=window.event?window.event:e;
var srcEle=e.srcElement?e.srcElement:e.target;
var theObjectYouWant=srcEle.parentNode;
}

刚刚又发现,FF下的childNodes比IE下的要大1
复制代码 代码如下:
o.previousSibling.href || o.previousSibling.previousSibling.href
前面一个表达式用于IE下,后面一个用于FireFox下.
因为在IE下,XMLDom没有preserveWhiteSpace这个属性,即:把空白也当作一个节点,而IE则默认为false,即把空白不看成一个节点.
这里说到了XMLDom,似乎和上面所说的不相关,但是在FireFox下 previousSibling就是空白,除非两个HTML标签之间没有任何形式的空格.

这个空白指的是 #text 节点
复制代码 代码如下:
<div>
<a>123</a>
6546
<b>321</b>
</div>

这里 div 应该有5个子节点
1. div 标记后到 a 标记前的那个回车换行
2. a 标记
3. \r\n6546\r\n
4. b 标记
5. b 标记后到 div 结束标记前的那个回车换行