我正在寻找一种在页面加载时自动"点击"项目的方法.
我试过用了
$("document").ready(function() { $("ul.galleria li:first-child img").trigger('click'); });
但它似乎没有用?但是,当我进入$("ul.galleria li:first-child img").trigger('click');
Firebug的控制台并运行脚本时,它可以工作.
触发事件可以在加载时使用吗?
您尝试触发的单击处理程序很可能也通过附加$(document).ready()
.可能发生的是您在附加处理程序之前触发事件.解决方案是使用setTimeout
:
$("document").ready(function() { setTimeout(function() { $("ul.galleria li:first-child img").trigger('click'); },10); });
延迟10ms将导致函数$(document).ready()
在调用所有处理程序后立即运行.
$(function(){ $(selector).click(); });
$("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'}); });