Jquery 非常简单的函数,但是没有';行不通

Jquery 非常简单的函数,但是没有';行不通,jquery,Jquery,请告诉我此脚本中存在什么问题: $("#mydiv").click(function() { console.log("something"); }, function() { console.log("something"); }); 它不会成为第二个控制台 谢谢只需要一个功能。您对第二个函数有什么期望 要让第二个函数在第一个函数之后运行,只需将其放在第一个函数的末尾。如果第一个函数异步执行某些操作,则需要将第二个函数作为回调

请告诉我此脚本中存在什么问题:

$("#mydiv").click(function() 
    {
        console.log("something");
    }, function()
    {
        console.log("something");
    });
它不会成为第二个
控制台

谢谢

只需要一个功能。您对第二个函数有什么期望

要让第二个函数在第一个函数之后运行,只需将其放在第一个函数的末尾。如果第一个函数异步执行某些操作,则需要将第二个函数作为回调附加到第一个函数的结果

$('#mydiv').click(function () {
    console.log('first something');
    console.log('second something');
});
或者像:

$('#mydiv').click(function () {
    $(this).fadeOut(function () {
        console.log('second something');
    });
});

我不认为你可以像这样在一个事件上绑定两个函数。除非它是为它设计的,比如hover。

这里没有任何东西可以执行第二个匿名(未命名)函数

编辑:如果要绑定“单击”的两个操作,可以绑定.mousedown和.mouseup函数,而不是singlular.click

EDIT2:根据注释,生成一个私有的执行函数序列:

$('#mybutton').click(function(){
    var one = function(){
        alert('one');
    };
    var two= function(){
        alert('two');
    };
    one();
    two();
});
要查看此操作,请访问:

如上所述,一次只接受一个处理程序。我想你需要叫它两次:

$("#mydiv").click(function() 
{
    console.log("something 1");
});
$("#mydiv").click(function()
{
    console.log("something 2");
});

您可能只需将两个函数编写为实际函数,然后从匿名函数中按顺序调用每个函数。像这样:

function a()
{
  console.log("something");
}

function b()
{
  console.log("something");
}

$("#id").click(function(){
  a();
  b();
});

我假设你想让它同时完成这两个功能,对吗?如果我想同时完成这两个功能,我会写
{function1(){…};function2(){…}
。。。我试着理解我必须写的东西,一个接一个地做函数?ie(我希望function2在function1之后运行,而不是在同一时间…)请参阅bigrockshow的解决方案,了解执行序列依赖性情况,因为javascript是单线程的。如果你想让这些函数成为事件的私有函数,这也可以通过正确构造的事件javascript来实现。请参阅我对单击事件中按顺序执行的私有函数的回答。hover所做的是将另外两个事件绑定到这两个函数。确切地说,这只是一个快捷方式。我需要函数2在函数1之后运行,不同时,是否可能?(即,如果在函数1中我有需要500毫秒的东西,我需要函数2在500毫秒后运行,但不使用
setTimeout
。)