如题,如何用js获取触发js事件的DOM。
对于某事件为myfunction(event),可以这样获取触发该函数的DOM:
function myfunction(event) {
event = event ? event : window.event;
var obj = event.srcElement ? event.srcElement : event.target;
//这时obj就是触发事件的对象,可以使用它的各个属性
//还可以将obj转换成jquery对象,方便选用其他元素
var $obj = $(obj);
alert($obj.parent().attr("href"));
}
附上event属性:
属性和方法 | 描述 |
---|---|
bubbles | 返回布尔值,指示事件是否是起泡事件类型。 |
cancelable | 返回布尔值,指示事件是否可拥可取消的默认动作。 |
currentTarget | 返回其事件监听器触发该事件的元素。 |
eventPhase | 返回事件传播的当前阶段。 |
target | 返回触发此事件的元素(事件的目标节点)。 |
timeStamp | 返回事件生成的日期和时间。 |
type | 返回当前 Event 对象表示的事件的名称。 |
initEvent() | 初始化新创建的 Event 对象的属性。 |
preventDefault() | 通知浏览器不要执行与事件关联的默认动作。 |
stopPropagation() | 不再派发事件。 |