有没有办法获得被触发器点击的元素选择器?我试图避免在$("#certain_element").trigger(e);
之类的触发器方法中指定某些元素我想在pageX
和pageY
参数定义的页面中的某个位置调用触发器,然后获取一个元素被点击了。
var e = new jQuery.Event("click");
e.pageX = 80;
e.pageY = 40;
$('*').trigger(e);
$('*').click(function() {
alert('This element was clicked:'+$(this).get(0).tagName);
});
此脚本无法正常运行。
答案 0 :(得分:1)
根据Andrew和Anurag的评论:
$(document.elementFromPoint(80, 40))
.trigger('click')
.css('background-color', 'blue');
答案 1 :(得分:0)
您在绑定点击之前触发它。
var e = new jQuery.Event("click");
e.pageX = 80;
e.pageY = 40;
// binds
$('*').click(function() {
alert('This element was clicked:'+$(this).get(0).tagName);
});
// then triggers
$('*').trigger(e);
尽管如此,如果我是你,我会使用另一个选择器,它不会触发窗口,文档和其他不必要标签的事件。
$(documnet.body).find('*').click(...);
$(document.body).find('*').trigger(e);