我有一个JS函数,我想在页面加载时自动点击jquery.click链接。
我怎样才能让它发挥作用?
当页面加载时我想看警报,不需要点击链接。
JS :
window.onload = function(){
document.getElementsByClassName("c").click();
}
$(".c").click(function(){
alert("ok");
});
HTML:
<a href="#" class="c">test</a>
答案 0 :(得分:1)
<强> DEMO HERE 强>
在click
上 trigger document.ready
$('document').ready(function(){
$(".c").click(function(){
alert("ok");
});
$('.c').trigger('click');
});
答案 1 :(得分:1)
答案 2 :(得分:1)
试试这种方式
$(document).ready(function(){
$(".c").trigger('click');
});
答案 3 :(得分:1)
因此,您可以将警报推送到某个功能中:
function callAlert() {
alert('a');
}
您可以像这样更改事件点击:
$(".c").click(callAlert);
最后,您可以在页面加载时调用alert函数:
$('document').ready(function(){
callAlert(); // call here
});
代码:
$('document').ready(function(){
callAlert();
$(".c").click(callAlert);
});
function callAlert() {
alert('a');
}
答案 4 :(得分:1)
getElementsByClassName
返回具有所有给定类名的所有子元素的类数组对象。在文档对象上调用时,将搜索完整的文档,包括根节点。要分配
click
处理程序,您必须遍历nodelist
或仅将事件分配给第一个element
试试这个:
window.onload = function () {
document.getElementsByClassName("c")[0].click();
};
$(".c").click(function () {
alert("ok");
});
答案 5 :(得分:1)
您需要在attach click
事件之前发生trigger
事件。
更改
document.getElementsByClassName("c")
到
document.getElementsByClassName("c")[0]
使用以下代码
$(document).ready(function(){
$(".c").click(function(){
alert("ok");
});
});
window.onload = function(){
document.getElementsByClassName("c")[0].click();
// Or use jQuery trigger
// $(".c").trigger('click')
}