jQuery 伪造点击事件

发布于 2024-12-02 20:52:47 字数 260 浏览 0 评论 0原文

假设我有代码:

$('#target').click(function() {
  alert('Handler for .click() called.');
});

我希望页面加载后 #target 将被自动单击,但单击功能保持活动状态。

例如,用于播放和停止的相同按钮。这将启动播放方法,但如果再次按下将停止该方法。

我应该将其放入单独的方法中,还是对此类事件进行单行调用?

Lets say I have code:

$('#target').click(function() {
  alert('Handler for .click() called.');
});

I want that after page is loaded #target would be auto clicked, yet click function remain active.

For example same button for play and stop. This would launch play method but if pressed again would stop that.

Should I just trow it to separate method or if there is single line call for such event?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

土豪我们做朋友吧 2024-12-09 20:52:47

这很简单,你几乎已经掌握了......

$('#target').click(function() {
  alert('Handler for .click() called.');
}).click();

这是一个小提琴: http://jsfiddle.net/gislikonrad/xqKBE /

It's quite simple and you almost had it...

$('#target').click(function() {
  alert('Handler for .click() called.');
}).click();

Here's a fiddle: http://jsfiddle.net/gislikonrad/xqKBE/

來不及說愛妳 2024-12-09 20:52:47
// when the page is ready
$(function() {
    $('#target').click(function() {
        alert('Handler for .click() called.');
    });

    // trigger click handler for #target
    $("#target").trigger('click');
});
// when the page is ready
$(function() {
    $('#target').click(function() {
        alert('Handler for .click() called.');
    });

    // trigger click handler for #target
    $("#target").trigger('click');
});
醉南桥 2024-12-09 20:52:47
$('#target').trigger("click");
$('#target').trigger("click");
疯狂的代价 2024-12-09 20:52:47

我认为你应该使用 toggle() 事件(而不是与显示和隐藏的切换混淆!),因为这可以处理同一事件的多个功能。然后您可以在绑定后调用 click() 来自动调用一次:

$('#target').toggle(function() {
  $(this).text('Stop');
}, function() {
  $(this).text('Play');
}).click();

< a href="http://jsfiddle.net/TUBqy/" rel="nofollow">JSFiddle 示例

I think you should the use toggle() event (not to be confused with toggle for showing and hiding!) as this handles multiple functions off the same event. You can then call click() after binding to call it once automatically:

$('#target').toggle(function() {
  $(this).text('Stop');
}, function() {
  $(this).text('Play');
}).click();

JSFiddle Example

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文