2

我试图让 jQuery 在页面加载时单击链接,我正在这样做,如下所示。但似乎没有任何效果。我需要它们本来的样子,因为我function稍后也会用相同的链接调用。知道我似乎做错了什么,以及如何正确地做到这一点?

如果我在页面加载后手动单击链接,该功能可以正常工作。

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Test trigger</title>
<script type="text/javascript" src="http://localhost/site/scripts/jQueryCore.js"></script>

<script type="text/javascript">
$(document).ready(function() {

    $(".link").trigger('click');

    $('.link').click(function () {
        console.log('I was clicked');
    });

});
</script>
</head>
<body>

    <div id="container">
        <span class="link">Click Me</span>
    </div>

</body>
</html>
4

1 回答 1

5

您需要在处理程序注册到目标元素后触发事件。当在元素上触发事件时,只会调用已在其中注册的那些处理程序

$('.link').click(function () {
    console.log('I was clicked');
});
$(".link").trigger('click');

演示:小提琴

于 2013-09-21T08:40:51.383 回答