Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.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 JQuery内联调用多个函数_Javascript_Jquery - Fatal编程技术网

Javascript JQuery内联调用多个函数

Javascript JQuery内联调用多个函数,javascript,jquery,Javascript,Jquery,这是我的相关代码: var dropdown = { init: function() { $(".dropdown").click(".dropdown", dropdown.openDropdown, dropdown.secondFunction); }, openDropdown: function() { ... } } 如何在单击事件上调用多个函数?我在上面添加了我想做的事情 编辑: 这是我在你们的帮助下的新代码,我可以确认两个函数都被调用了,因

这是我的相关代码:

var dropdown = {
  init: function() {
    $(".dropdown").click(".dropdown", dropdown.openDropdown, dropdown.secondFunction);
  },  
  openDropdown: function() {
    ...
  }
}
如何在
单击事件上调用多个函数?我在上面添加了我想做的事情

编辑

这是我在你们的帮助下的新代码,我可以确认两个函数都被调用了,因为当我在其中放入警报时,它们都会触发,但由于某种原因,
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() {
...
  }
}
像这样:

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

$('.dropdown').on('click', function () {
  dropdown.openDropdown();
  dropdown.secondFunction();
});
如果希望
这个
打开下拉列表中
第二个函数中
成为您需要使用的元素,请调用

var dropdown = {
  init: function() {
    $(".dropdown").on("click", function () {
      // The call makes `this` the element in the functions...
      dropdown.openDropdown.call(this);
      dropdown.secondFunction.call(this);
    });
  },  
  openDropdown: function() {
    console.log('openDropdown', this);
  },
  secondFunction: function() {
    console.log('secondFunction', this);
  }
};

dropdown.init();
你可以做:

$('.dropdown').on('click', function () {
  dropdown.openDropdown();
  dropdown.secondFunction();
});
如果希望
这个
打开下拉列表中
第二个函数中
成为您需要使用的元素,请调用

var dropdown = {
  init: function() {
    $(".dropdown").on("click", function () {
      // The call makes `this` the element in the functions...
      dropdown.openDropdown.call(this);
      dropdown.secondFunction.call(this);
    });
  },  
  openDropdown: function() {
    console.log('openDropdown', this);
  },
  secondFunction: function() {
    console.log('secondFunction', this);
  }
};

dropdown.init();


那么
点击
处理程序中的
.dropdown
块会被传递给两个函数吗?点击“this”将是调用事件的元素,所以是。dropdown“this”不会
。dropdown
元素而不是
dropdown
变量吗?是的--我搞不清楚是什么
这是
,也是单击事件中传递的
下拉列表
。抱歉…
单击事件中的此
是元素
这个
init
范围内的
将是
下拉列表
本身。那么
单击
处理程序中的
下拉列表
块将被传递给两个函数吗?单击“this”将是调用事件的元素,所以是。下拉列表“不是
这个
。下拉列表
元素,而不是
下拉列表
变量?是的--我不清楚这个
是什么,也不清楚单击事件中传递的
下拉列表是什么。抱歉…
单击事件中的此
是元素
init
范围内的
将是
下拉列表
本身。
$(“.dropdown”)。单击(“.dropdown”,…)不正确。
$(.dropdown”)。单击(.dropdown),…)不对。非常感谢你,比尔。。。我从来没有听说过这个
。调用
函数,我会仔细阅读的。非常感谢比尔。。。我从来没有听说过这个
。调用
函数,我会详细了解它的。