如何触发HTML链接(锚元素)的默认动作/事件

How to trigger the default action/event of a HTML link (anchor element)?

本文关键字:默认 事件 元素 HTML 何触发 链接      更新时间:2023-09-26

如何触发HTML链接(锚元素)的默认动作/事件?也就是使用JavaScript/jQuery来"点击"一个现有的HTML链接,就好像用户已经点击了它。

仅使用.click()似乎不起作用。

$('#alink').click();
// the nothing happening

这个HTML:

<a id="alink" href="http://google.com" target="_blank">a link</a>

示例:http://jsfiddle.net/dCfD8/

我宁愿不创建一个新的JavaScript窗口(并照顾任何其他需要处理当一个链接被点击)

你可以在jQuery中使用一个简单的trigger方法来触发点击事件。

$('#alink').trigger('click');

要注意,即使事件被触发,浏览器也不会跟随链接href。遵循href的唯一方法是自己用鼠标点击它。

据我所知,没有办法强制链接的行为,如果它被点击。你需要改变文档位置或者类似的东西才能在页面之间导航

扩展Fabio Cicerchia对他自己帖子的评论:你可以使用window.open:

var link = $('#alink');
var target = link.attr("target");
window.open(link.attr("href"), target ? target : "_self");
    <script src='jquery lib source' ></script>
    <script>
    function force()
    {    ...do something...to fill page2
         $('#gopage2').trigger('submit');
    }    
    </script>  
    <form action='#page2' id='gopage2'>
    </form>
    ...
    <span name='#page2'>This is page2</span>

try this:

$('#alink').trigger('click');