[英]How to simulate click on page load?
我的目标不是简单的重定向 !
甚至在您将其标记为重复之前,我已经尝试过这个 , 这个和这个 。 它没有用。 我已经在以下代码中尝试过了。
<a href="http://google.com" class="test_class">click me</a>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script language="javascript">
$("document").ready(function() {
setTimeout(function() {
//$('.test_class').click();
$('.test_class').trigger('click');
},10);
});
</script>
我尝试了带有setTimeout
和没有setTimeout
的click事件,但没有任何效果。 我也尝试过使用id,但没有成功。 我在ubuntu 14.04上使用google chrome版本44.0.2403.157(64位) ,如果有关系的话。
编辑:我刚才也尝试了以下变体,但它们没有起作用:(
$(document).ready(function() { //removed quotes.
setTimeout(function() {
//$('.test_class').click();
$('.test_class').trigger('click');
},10);
});
这个
$(document).ready(function() {
setTimeout(function() {
//$('.test_class').click();
$('.test_class')[0].trigger('click'); //added array representation
},10);
});
而且,此单击事件的特殊之处在于我可以看到警报,但是<a>
的单击事件并未发生。
<a href="http://google.com" class="test_class">click me</a>
<div class="submit_btn" style="display:none;" onclick="dothis();"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script language="javascript">
function dothis()
{
alert('dskjhfjkds');
$('.test_class').click();
}
$(document).ready(function() {
setTimeout(function() {
//$('.test_class').click();
$('.submit_btn').click();
},10);
});
//$('.test_class')[0].trigger('click');
</script>
ps点击事件的实际情况有所不同,这不是简单地重定向到google网站。
改为这样做:
$('.test_class')[0].click();
当您触发<a>
元素上的click事件时,似乎没有遵循href
属性。
因此:
<a href="http://google.com" class="test_class">click me</a>
<script>
$(document).ready(function() {
setTimeout(function() {
$('.test_class').click(); // this won't trigger the link to google.com
},10);
});
</script>
在以下情况下不起作用:
<a href="http://google.com" onClick="alert('this is an alert');" class="test_class">click me</a> <!-- notice the onClick attribute -->
<script>
$(document).ready(function() {
setTimeout(function() {
$('.test_class').click(); // this will trigger the alert
},10);
});
</script>
这个会的。
我猜应该有一些阻止带有href
属性的链接被Javascript触发的事情。
如果要在HTML中执行重定向,建议您深入研究<meta http-equiv="refresh" content="5; URL=http://www.mydomain.tld">
标记。
您需要通过访问$('.test_class')[0]
对元素进行DOM事件点击:
$('.test_class')[0].click();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.