javascript 从单击处理程序退出

xfb7svmp  于 2024-01-05  发布在  Java
关注(0)|答案(5)|浏览(144)

你如何退出一个事件?

  1. $('.more').click(function() {
  2. if (condition1) {
  3. if (condition2) {
  4. // abort, exit completely out of click handler
  5. ...

字符串

jv2fixgn

jv2fixgn1#

在这里使用return

  1. $('.more').click(function() {
  2. if (condition1) {
  3. if (condition2) {
  4. // abort, exit completely out of click handler
  5. return;

字符串

参见:
Interrupting a function Safely

c3frrgcw

c3frrgcw2#

第一个月
这将使您退出与单击处理程序关联的函数;

vsaztqbk

vsaztqbk3#

注意,你也可以在这里使用break。

  1. $('.more').click(function() {
  2. if (condition1) {
  3. if (condition2) {
  4. // abort, exit completely out of click handler
  5. break;

字符串

92vpleto

92vpleto4#

我不再使用匿名函数,因为当我开始命名它们时,我对JavaScript的理解跳到了一个新的平台。此外,命名你的函数提供了一种内联文档:

  1. $('.more').click(myFunction)
  2. function myFunction() {
  3. if (condition1) {
  4. if (condition2) {
  5. return
  6. }
  7. }
  8. }

字符串

f87krz0w

f87krz0w5#

我的问题似乎既没有用break也没有用return解决,所以我最终通过给脚本标记一个ID,然后在点击事件完成后从DOM中删除整个脚本来解决它:

  1. <script id="clickEventScript">
  2. document.querySelector('.where-the-user-clicks').addEventListener('click', () => {
  3. setTimeout(function() {
  4. // do the things
  5. document.getElementById('clickEventScript').remove();
  6. }, 1000);
  7. });
  8. </script>

字符串
这是一个有点混乱的黑客,但它做的伎俩!

相关问题