您的方法存在一些问题。
首先,正如 Ivan 所说,$('div').click();
这会导致页面中的每个<div>
页面都引发 click 事件,这不是您想要的。我已经更新了你的例子来证明这一点。Ivan 建议您使用 ID 来专门选择要单击的包是正确的。例如:
<div id="package1">Hidden</div>
<div id="package2">Pick me</div>
<div id="package3">Another package</div>
<script>$('#package2').click();</script>
或者,您可以使用您的 Javascript 使用的任何方法来区分各种包之间的差异,以确定选择哪个包,可以是 CSS 类、HTML5数据属性等。
其次,您如何隐藏第一个选定的包?可能类似于$('.selected').hide();
?为什么不完全从 DOM 中删除第一个包,然后在新的“第一个”包上触发点击事件?例如:
$('.selected').remove();
$('.packages').first().click();
第三,您评论“元素是链接,但 href 是 javascript”。你为什么要触发点击事件<div>
呢?从它的声音来看,您应该以<a>
元素为目标。
第四,jQuery的click()
函数只触发点击 事件。这与“使用 jQuery 像用户一样‘单击’选项”不同。如果您所有的 Javascript 都在<a>
href属性中,它只会在用户手动单击它时触发,而不是在触发click事件时触发。我整理了一个例子来强调差异。