jQuery Event.relatedTarget 属性详解

时间:15-01-26 栏目:JQUERY 作者:zongyan86 评论:0 点击: 2,518 次

relatedTarget属性用于返回当前事件涉及到的其他DOM元素,如果有的话。

对于"mouseout"事件,它指向被进入的元素;对于"mouseover"事件,它指向被离开的元素。

该属性属于jQuery的Event对象(实例)。

语法

jQuery 1.1.4 新增该属性。

eventObject.relatedTarget
返回值

relatedTarget属性的返回值是Element类型,返回当前事件涉及到的其他DOM元素(如果存在的话)。

某些事件可能涉及到多个元素。以"mouseout"为例,当我们将鼠标从某个元素上移出去的时候,鼠标实际上也进入了另外一个元素。relatedTarget属性就用于返回当事件触发时,该事件所涉及到的其他DOM元素。

对于"mouseenter"、"mouseover"等事件而言,relatedTarget属性返回被离开的DOM元素。
对于"mouseout"、"mouseleave"事件而言,relatedTarget属性返回被进入的DOM元素。
对于"focus"事件而言,relatedTarget属性返回失去焦点的DOM元素(如果有的话)。
对于"blur"事件而言,relatedTarget属性返回获得焦点的DOM元素(如果有的话)。
如果当前事件没有涉及到其他元素,则返回null或undefined(视情况而定)。
示例&说明

注意:relatedTarget属性的返回值是不确定的,这取决于触发事件的具体行为。

以下面的代码为例:
如果鼠标从a1向右移动到<span>元素(上,则返回该<span>元素(n3);
如果鼠标从a1向下移动到<div>元素上,则返回该div元素(n1);
如果鼠标从a1向左移动到<p>元素上,则返回该<p>元素(n2)。

对于a2而言,它可以返回html、body或div等元素的其中之一。

示例:

<div id="n1" style="height: 100px; border: 1px solid #000;" >
    <p id="n2">段落文本<a id="a1" href="http://www.365mini.com">CodePlayer</a><span id="n3">专注于编程开发技术分享</span>  </p>
</div>
<a id="a2" href="http://www.365mini.com">CodePlayer</a>
<div id="message"></div>


<script type="text/javascript">
$("a").bind("mouseout", function(event) {
    $("#message").text(event.relatedTarget ? event.relatedTarget.tagName : "null" );
} );
</script>

web开发分享网



声明: 本文由( zongyan86 )原创编译,转载请保留链接: jQuery Event.relatedTarget 属性详解

关注我们