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

Javascript
document.createElement()用法及注意事项
Javascript教程:关于内存泄漏问题
延迟事件为0的setTimeout的真正目的
JavaScript图片特效代码下载
AJAX初学:IE缓存页面的问题
AJAX中DOM的操作方法
AJAX中文乱码的两类问题
javascript程序的执行效率问题
网页用户注册界面的设计
ajax应该如何应用?
详解Javascript匿名函数的使用
Ajax:研究密码强度规则(仿google)
JavaScript学习教程
网页制作中常用的Javascript代码
深入学习Javascript函数
JS的Object类的属性和方法
Javascript初学者实例教程(1):简单交互
Javascript初学者实例教程(2):event对象和事件
Javascript初学者实例教程(3):数组和slice()方法
Javascript初学者实例教程(4):对象和构造方法

Javascript 中的 取得父标签


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 330 ::
收藏到网摘: 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 结束标记前的那个回车换行