Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果某个事件附加到不';不存在_Javascript_Security_Events - Fatal编程技术网

Javascript 如果某个事件附加到不';不存在

Javascript 如果某个事件附加到不';不存在,javascript,security,events,Javascript,Security,Events,因此,这个问题有两个重要的细节: 它在documentready的回调函数的范围内 事件所附加到的元素实际上不存在于DOM中 这是一个场景的可视化表示 $(document).ready(function() { $('#myNonExistentElement').on('click', function() { //do something }); }); 在这种情况下,是否可以通过编程方式(通过控制台或其他方式)触发单击事件?如果试图通过jQuery将事件

因此,这个问题有两个重要的细节:

  • 它在documentready的回调函数的范围内
  • 事件所附加到的元素实际上不存在于DOM中
  • 这是一个场景的可视化表示

    $(document).ready(function() {
        $('#myNonExistentElement').on('click', function() {
            //do something
        });
    });
    

    在这种情况下,是否可以通过编程方式(通过控制台或其他方式)触发单击事件?

    如果试图通过jQuery将事件绑定到不存在的元素(或至少,
    .on
    ),则不会绑定新事件

    样本案例


    *由于我懒惰,事件代码从中被盗。

    如果您试图通过jQuery将事件绑定到不存在的元素(或者至少,
    .on
    ),则不会绑定新事件

    样本案例


    *由于我懒惰,事件代码从中被盗。

    我认为简单的答案是否定的

    但是,有两种情况可能符合您的问题:

    1) 如果您只想执行事件处理程序代码,请使用命名函数(而不是匿名函数)并在需要时调用它

    2) 如果要将单击处理程序绑定到DOM中尚不存在但将来会存在的对象,可以使用以下代码:

    $(document).ready(function() {
      $('body').on('click', '#myNonExistentElement', function() {
        //do something
      });
    });
    

    请参阅

    中有关委派事件的部分。我认为简单的答案是否定的

    但是,有两种情况可能符合您的问题:

    1) 如果您只想执行事件处理程序代码,请使用命名函数(而不是匿名函数)并在需要时调用它

    2) 如果要将单击处理程序绑定到DOM中尚不存在但将来会存在的对象,可以使用以下代码:

    $(document).ready(function() {
      $('body').on('click', '#myNonExistentElement', function() {
        //do something
      });
    });
    
    请参阅上关于委派事件的部分