jQuery模拟单击

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (40)

我想在加载页面时触发一个函数。但是,当我添加$('#button').click在我的功能面前时,getType功能不被识别。例如:

$('#button').click(function getType(id) {
    //...some code
});

错误:getType未定义

我做错什么了?

澄清一下,在这种情况下,我不能使用匿名函数。而且,对我来说,我使用$(document).ready$(window).bind("load", function(),我仍然会得到“getType未定义”错误。

提问于
用户回答回答于

你要么让你的函数匿名:

$('#button').click(function() {
    //...some code
});

或者传递函数本身:

function getType() {
    //...some code
}

$('#button').click(getType);

如果你只想触发点击,调用.click():

$('#button').click();

还有,你的id参数不是元素的id。它将是Click事件对象。得到元素的id,你可以使用this:

$('#button').click(function() {
    var id = this.id;
});
用户回答回答于

你正在使用内联表示法,因此,你应该使用匿名函数。

你的代码应该是:

$('#button').click(function() {
      // do your stuff here
    }
);

就像标题说的,你需要模拟一个click事件,对吗?如果是这样的话,你最好使用这样的方法:

$('#button').on('click', function() {
  alert($(this).text());
});
// somewhere when you want to simulate the click you call the trigger function
$('#button').trigger('click');

扫码关注云+社区

领取腾讯云代金券