首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在href元素上触发点击事件

如何在href元素上触发点击事件
EN

Stack Overflow用户
提问于 2011-11-04 02:06:56
回答 5查看 314.4K关注 0票数 86

我试着用下面的方式在jQuery的超链接上触发点击事件。Hyperlink没有任何id,但它有css类:

代码语言:javascript
复制
$(document).ready(function () {  
  $('.cssbuttongo').trigger('click'); 
}); 

上面的功能不起作用。这是超链接:

代码语言:javascript
复制
<a href="hyperlinkurl" class="cssbuttongo">hyperlink anchor</a>
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-11-04 02:13:33

我没有事实证据来证明这一点,但我已经遇到了这个问题。在<a>标记上触发click()事件似乎与您期望的输入按钮的行为方式不同。

我采用的解决方法是在窗口上设置location.href属性,这会导致浏览器加载请求资源,如下所示:

代码语言:javascript
复制
$(document).ready(function()
{
      var href = $('.cssbuttongo').attr('href');
      window.location.href = href; //causes the browser to refresh and load the requested url
   });
});

编辑:

我想做一个js小提琴,但这个问题的性质与jsfiddle如何使用iframe来呈现代码的性质混合在一起,这使得这是行不通的。

票数 81
EN

Stack Overflow用户

发布于 2014-02-14 02:38:34

原生DOM方法做了正确的事情:

代码语言:javascript
复制
$('.cssbuttongo')[0].click();
                  ^
              Important!

无论href是一个URL,一个片段(例如#blah),甚至是一个javascript:,这都是有效的。

请注意,这将调用DOM click方法,而不是jQuery click方法(该方法非常不完整,并且完全忽略了href)。

票数 221
EN

Stack Overflow用户

发布于 2011-11-04 02:10:20

通过JavaScript触发单击不会打开超链接。这是内置在浏览器中的安全措施。

不过,请参阅this question了解一些变通方法。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7999806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档