我正在寻找一种在页面加载时自动“点击”某个项目的方法。
我尝试过使用
$("document").ready(function() {
$("ul.galleria li:first-child img").trigger('click');
});
但它似乎不起作用?但是,当我将$("ul.galleria li:first-child img").trigger('click');
输入Firebug的控制台并运行脚本时,它可以正常工作。
可以在加载时使用触发器事件吗?
答案 0 :(得分:102)
您尝试触发的点击处理程序很可能也通过$(document).ready()
附加。可能发生的是您在附加处理程序之前触发事件。解决方案是使用setTimeout
:
$("document").ready(function() {
setTimeout(function() {
$("ul.galleria li:first-child img").trigger('click');
},10);
});
延迟10毫秒将导致函数在调用所有$(document).ready()
处理程序后立即运行。
答案 1 :(得分:7)
$(function(){
$(selector).click();
});
答案 2 :(得分:5)
$("document").ready({
$("ul.galleria li:first-child img").click(function(){alert('i work click triggered'});
});
$("document").ready(function() {
$("ul.galleria li:first-child img").trigger('click');
});
只需确保在调用堆栈序列中的触发事件之前添加了单击处理程序。
$("document").ready(function() {
$("ul.galleria li:first-child img").trigger('click');
});
$("document").ready({
$("ul.galleria li:first-child img").click(function(){alert('i fail click triggered'});
});
答案 3 :(得分:1)
试试这个,
$("document").ready(function(){
$("your id here").trigger("click");
});
答案 4 :(得分:1)
您可以执行以下操作: -
$(document).ready(function(){
$("#id").trigger("click");
});