点击JavaScript中的源代码和jQuery,人还是自动? [英] Click source in JavaScript and jQuery, human or automated?

查看:105
本文介绍了点击JavaScript中的源代码和jQuery,人还是自动?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们都知道,您可以使用以下方法之一模拟元素上的点击或任何其他事件:

We all know that you can simulate click or any other event on an element using one of these ways:

$('#targetElement').trigger('eventName');
$('#targetElement').click();

我遇到一种情况,我应该知道一个元素是如何被点击的。我应该知道它是否通过代码自动点击,或按鼠标按钮。有没有反正我可以做它没有黑客或解决方法?我的意思是,有没有什么内置到浏览器的事件对象,JavaScript或jQuery,可以告诉我们是否点击是由人类的行动或代码启动。

I have encountered a situation in which, I should know how an element is clicked. I should know if it's been clicked automatically via code, or by pressing mouse button. Is there anyway I can do it without hacks or workarounds? I mean, is there anything built into browsers' event object, JavaScript, or jQuery that can tell us whether click has been initiated by a human action or by code?

推荐答案

尝试这样:

$('#targetElement').click(function(event, generated) {
    if (generated) {
        // Event was generated by code, not a user click.
    } else {
        // Event was generated by a user click.
    }
});

然后,为了使这项工作,你必须像这样触发:

Then, to make this work, you have to trigger them like this:

$('#targetElement').trigger('click', [true]);

请参阅 this jsfiddle

这篇关于点击JavaScript中的源代码和jQuery,人还是自动?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆