javascript - JQuery 内联调用多个函数

标签 javascript jquery

这是我的相关代码:

var dropdown = {
  init: function() {
    $(".dropdown").click(".dropdown", dropdown.openDropdown, dropdown.secondFunction);
  },  
  openDropdown: function() {
    ...
  }
}

如何在 click 事件上调用多个函数?我在上面添加了我尝试做的事情。

编辑:

这是我在你们的帮助下的新代码,我可以确认这两个函数都被调用,因为当我将警报放入其中时,它们都会触发,但由于某种原因,现在 openDropdown 中的代码不工作。是因为我的 $(this) 引用已关闭还是其他原因?

var dropdown = {
  init: function() {
    $(".dropdown").click(".dropdown", function() { dropdown.openDropdown(); dropdown.closeDropdowns(); });
  },
  openDropdown: function() {
    $(this).children(".dropdown-menu").show();
    $(this).addClass("open");
  },
  closeDropdowns: function() {
    //$(".open").removeClass(".open");
    //$(".open").children(".dropdown-menu").hide();
  }
}

最佳答案

像这样:

var dropdown = {
  init: function() {
    $(".dropdown").click(".dropdown", function(){ this.openDropdown(); this.secondFunction()});
  },  
  openDropdown: function() {
...
  }
}

关于javascript - JQuery 内联调用多个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23834182/

相关文章:

javascript - 如何在 Vue 3/Nuxt 3 中为表单提交添加动态输入字段?

javascript - 隐藏具有特定类和属性的链接

javascript - 防止标准的 href/jquery 单击组合将 # 附加到 url?

jquery - 如何使用 for 循环获得与 .each() 相同的功能?

jquery - 动态网格,使流体盒等高

javascript - Vue & Quasar - 共享自定义对话框组件

javascript - 如何在 WebView 中加载 Javascript

javascript - Ajax 从 jquery 到 javascript

javascript - 使用 PhantomJS 选择时 JQuery 不是 "clicking"

c# - 页面重新加载时触发自动完成