繁体   English   中英

jQuery点击功能不触发点击

[英]Jquery click function not triggering a click

我有这个简单的HTML页面:

<html>

<head>
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript">  </script>

<script>
$(document).ready(function () {
  $('#test').click();
});
</script>

</head>

<body>
<a id="test" href="http://google.com">http://google.com</a>
</body>

</html>

我想在加载页面时触发名为test的元素上的click事件。 实际的代码实际上比这更复杂,但是这个非常基本的示例不起作用。 我检查了控制台日志,那里没有任何通知。

您触发的.click()是正确的,但缺少'#test'的click事件,如下所示:

$('#test').click(function(){
  alert('here');
});

现在,您完整的jquery代码如下所示:

<script>
$(document).ready(function () {
  $('#test').click();  //or  $('#test').trigger('click');
  $('#test').click(function(e){
    e.preventDefault();
    alert('here');
    window.location.href = $(this).attr('href'); //redirect to specified href
  });
});
</script>

.click()实际上并未发送click事件。

.click()的作用是定义单击元素时发生的事情。

您需要使用触发DOM元素的点击

$('#test').get(0).click();

使用.get() ,它检索与jQuery对象匹配的DOM元素。 由于.click()将触发元素click事件处理程序。 它实际上不会单击该元素。

使用简单的Vanialla JS

document.getElementById('test').click()

演示

您的#test链接应绑定到一个函数,例如:

$(document).ready(function () {

  //do something on test click
  $('#test').on("click", alert());

 //click test
  $('#test').click();
});

http://jsfiddle.net/ub8unn2b/

这里触发了点击事件,即在页面加载时触发了点击事件,但您不能仅通过触发点击事件来加载href,为此您可以使用

window.location.href =“ http://www.google.com ”;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM