Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过JavaScript在锚定标记中导航href_Javascript_Jquery - Fatal编程技术网

如何通过JavaScript在锚定标记中导航href

如何通过JavaScript在锚定标记中导航href,javascript,jquery,Javascript,Jquery,有没有一种简单的方法让JavaScript模拟用户单击页面上的锚定标记?这意味着需要设置推荐人Url。仅设置document.location.href不会设置引用者Url <script> $(document).ready(function () { $("a").click(); }); </script> <a href="http://example.com">Go here</a> $(文档).ready(函数(){

有没有一种简单的方法让JavaScript模拟用户单击页面上的锚定标记?这意味着需要设置推荐人Url。仅设置document.location.href不会设置引用者Url

<script>
  $(document).ready(function () {
    $("a").click();
});
</script>

<a href="http://example.com">Go here</a>

$(文档).ready(函数(){
$(“a”)。单击();
});
这不起作用,因为链接没有Click()事件设置。

您可以执行以下操作:

window.location = $("a").attr("href");
如果您想保留推荐人,您可以这样做:

var href = $('a').attr('href');
$('<form>').attr({action: href, method: 'GET'}).appendTo($('body')).submit();
var href=$('a').attr('href');
$('').attr({action:href,方法:'GET'}).appendTo($('body')).submit();

这是一个黑客程序,但适用于所有浏览器。

也许你正在寻找类似的东西

$(document).ready(function () {
  $("a").each(function(){
    if($(this).click()){
      document.location.href = $(this).attr("href");
    }
  });
});

好的,referer没有使用document.location(根据我的另一个回答)进行设置,可能与window.navigate(url)一起使用?如果这不起作用,那么下面的方法可能会很糟糕,尽管这很难看:

$(function() {
  $("a").each(function(){
    if($(this).click()){
      $('<form method="get" action="' + $(this).attr("href") + '"></form>').appendTo("body").submit();
      return false;
    }
  });
});
$(函数(){
$(“a”)。每个(函数(){
如果($(此)。单击(){
$('').appendTo(“body”).submit();
返回false;
}
});
});

有一种更简单的方法来实现它

HTML

<a href="https://getbootstrap.com/" id="fooLinkID">Bootstrap is life </a>
// Simulating click after 3 seconds
setTimeout(function(){
  document.getElementById('fooLinkID').click();
}, 3 * 1000);
使用纯javascript模拟单击


您可以在这里查看工作示例。

我认为这不适用于获取推荐人Url。我更新了问题以反映这一点。Mm。它在Firefox上有,只是在IE上没有。查看它。如果你想保留引用者url,可以使用window.location.assign(),因此代码将是window.location.assign(“);这不适用于,因为引用者url没有设置。我更新了问题
// Simulating click after 3 seconds
setTimeout(function(){
  document.getElementById('fooLinkID').click();
}, 3 * 1000);