当前位置: 首页 > 面试题库 >

检查事件是否由人触发

朱浩大
2023-03-14
问题内容

我有一个附加到事件的处理程序,我希望它仅在由人触发而不是由trigger()方法触发时执行。我该如何区分?

例如,

$('.checkbox').change(function(e){
  if (e.isHuman())
  {
    alert ('human');
  }
});

$('.checkbox').trigger('change'); //doesn't alert

问题答案:

您可以检查e.originalEvent:如果已定义,则点击是人为的:

$('.checkbox').change(function(e){
  if (e.originalEvent !== undefined)
  {
    alert ('human');
  }
});

我在jsfiddle中的例子:

<input type='checkbox' id='try' >try
<button id='click'>Click</button>

$("#try").click(function(event) {
    if (event.originalEvent === undefined) {
        alert('not human')
    } else {
        alert(' human');
    }


});

$('#click').click(function(event) {
    $("#try").click();
});


 类似资料:
  • 本文向大家介绍如何检测MySQL中的查询是否触发了ON UPDATE事件?,包括了如何检测MySQL中的查询是否触发了ON UPDATE事件?的使用技巧和注意事项,需要的朋友参考一下 您可以借助row_count()进行检测。如果row_count()返回1,则表示它是新记录。如果返回2,则表示查询触发了ON UPDATE事件。以下是语法- 让我们首先创建一个表- 使用插入命令在表中插入一些记录-

  • 问题内容: 有没有一种方法可以检查jQuery中是否存在事件?我正在使用自定义命名空间事件的插件,并且希望能够检查事件是否绑定到元素。 问题答案: $(‘body’).click(function(){ alert(‘test’ )}) 您可以通过将对象引用(虽然不是jQuery对象)馈送到$.data进行检查,并为第二个参数馈送“事件”,这将返回一个填充有所有事件(例如“点击”)的对象。您可以遍

  • 现在我已经配置了 jenkins gitlab 连接和 gitlab webhook 来触发 jenkins 作业。 我想创建Jenkinsfile,其中一些任务仅在推送触发构建时执行,而另一些任务仅当合并请求触发构建时才执行。我使用管道作业。有可能吗? BUILD_CAUSE变量不显示任何内容。 谢谢

  • 我正在编写一个手势/动作库,它还管理事件侦听器和触发。我已经实现了我的库,通过一个API支持手势对象设置被动侦听器,该API如下:。My lib支持多种手势,设置多个听众,包括被动和非被动。lib将确保最多只有一个真正的侦听器连接到DOM。因此,我们最多可以有2个touchstart监听器,其中一个是被动监听器,另一个不是。 我的问题和问题是,我无法检测接收到的事件是否附加了选项。我认为我可以在本

  • 我有一个通过使用powershell用ARM模板创建的azure函数。 函数是在消耗计划上运行的blob触发器类型函数,用于将blob从源存储复制到目标存储。 当我将blob上传到源存储时,它不会被复制。这意味着功能没有被执行。 当我通过门户浏览函数应用时,将调用函数并按预期执行所需的操作。此后,它工作正常。仅当函数应用最初由 Powershell 脚本使用 ARM 模板部署时,才会发生这种情况。

  • 问题内容: 如何检查连接是否已在事务中?我正在使用Microsoft SQL Server数据库文件。 问题答案: 经过一番搜索,我发现了另一个“堆栈溢出”问题。事实证明,您不能在ADO.NET中嵌套事务。尝试时,您可能最终会启动两个不相关的事务,这会导致并行事务错误。 要查看连接当前是否在事务中,可以执行以下操作: 这将返回嵌套事务的数量。 请注意,您可以手动嵌套事务,而无需使用SqlTrans