Javascript 无法使用触发器()获取事件目标
如果我用trigger()调用事件目标,有人能告诉我为什么无法获取它吗 我得到了这个HTML:Javascript 无法使用触发器()获取事件目标,javascript,jquery,Javascript,Jquery,如果我用trigger()调用事件目标,有人能告诉我为什么无法获取它吗 我得到了这个HTML: <span class="test_span" onmouseover="Test()"> test </span> 如果运行它,我将得到错误: 未捕获的TypeError:无法读取未定义的属性“target” 但如果我用鼠标悬停元素,它将返回: <span class="test_span" onmouseover="Test()"> test
<span class="test_span" onmouseover="Test()">
test
</span>
如果运行它,我将得到错误:
未捕获的TypeError:无法读取未定义的属性“target”
但如果我用鼠标悬停元素,它将返回:
<span class="test_span" onmouseover="Test()">
test
</span>
测试
我怎样才能解决这个问题?我需要用触发器模拟点击并得到对象。
试试这个
$('.span_width').on('mouseover', function(e) {
var target = e.target || window.event.srcElement;
console.log(target);
});
试试这个
$('.span_width').on('mouseover', function(e) {
var target = e.target || window.event.srcElement;
console.log(target);
});
不要使用
内联事件处理程序。在
上使用
请参阅代码中的内联注释
HTML:
演示:不要使用内联事件处理程序。在
上使用
请参阅代码中的内联注释
HTML:
演示:
你可以试试这个,这将是简单的使用
您可以试试这个,这将是一个简单易用的窗口。事件
是MSIE。使用var evt=e | | window.event编码>并使用onmouseover=“Test(event)”>
传入事件对象。不要使用内联处理程序。使用var evt=e | | window.event编码>并使用onmouseover=“Test(event)”>
传入事件对象。不要使用内联处理程序
是的,这是一个很好的解决方案。但对我来说不起作用。关键是我有多个调用Test()的对象,调用Test()的对象是我的目标。在这种情况下,既然.span\u width
是我想要的,我就必须做好准备。你知道怎么做吗?我真的不能这样:Test(event)
@Pierezzz您可以使用$('.span_-width,myotherl,oneMore')。在('mouseover',…
是的,这是一个很好的解决方案。但在我的情况下不起作用。问题是,我有多个对象将调用Test(),即调用Test()的对象是我的目标。在这种情况下,我现在必须准备好。span_width
是我想要的。你知道怎么做吗?我真的不能这样:测试(事件)
@Pierezzz你可以使用$('.span_width,myOtherEl,oneMore')。在('mouseover',…
<span class="span_width"><!-- Remove onmouseover="Test()" -->
test
</span>
// on mouseover of span_width
$('.span_width').on('mouseover', function (e) {
// Use event object to get target
console.log(e.target);
}).trigger('mouseover');
// Trigger mouseover event
$(".test_span").mouseover(function(){
var target = window.event.target || window.event.srcElement;
alert(target);
});