首页 > js判断函数执行

js判断函数执行

怎么用js去判断只要当下面的div点击事件触发了,就执行函数b()
函数b()不能放到点击事件里的

$(function(){
  $("div").on("click",function(){
    //....代码
  })
  b();
})

$(function(){
  function b(){
    ...
  }
  $("div").on("click",b);
});

1、将 b作为参数,传入 function(event){ //....代码}event();)。
2、轮询了,设置flag,如果flag变化了,就执行event(); if(flag){event()}。
3、使用vue,ng等框架有 watcher 的功能。


可以用 Promise
jQuery实现是Defered

var def = new $.Defered();
$().on('click', function(){
  def.resolve();
});
def.then(function(){
   b();
});

$(function(){
  // 引入Event事件管理对象,可以自己实现也可以用现成的 百度下就能找到很多
  Event.on('div:click',b);
  $("div").on("click",function(){
    //....代码
    Event.emit('div:click');
  });
});

不知道楼主说的是不是这个意思

---------补充-----------

可以直接使用jquery的事件

$(function(){
  var events = {};
  $(events).on('div:click',b);// 这个叫b的函数 你应该在前边定义了
  $('div').on('click',function(){
    //....代码 这里trigger跟emit是一个功能,不同的库里取的名不一样
    $(events).trigger('div:click');
  });
});

这段代码直接可用不用改,试试吧

【热门文章】
【热门文章】