如何通过javascript或jquery更改href?

时间:2016-12-20 15:10:01

标签: javascript jquery

street

如何通过javascript更改href(不是通过getElementById,因为html中没有提到)或jquery?

3 个答案:

答案 0 :(得分:1)



$("body").ready(function() {
  $("ul li a").attr("href", "http://www.stackoverflow.com/")
})

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul> <li> <a target="_blank" href="www.google.com">google</a> </li> </ul>
&#13;
&#13;
&#13;

这是一种简单的方法,但是现在它将它应用于所有Links,因为你没有选择器(类或id)

答案 1 :(得分:0)

document.getElementById()不是在文档中查找元素的唯一方法。您可以使用类似document.querySelector()的相当强大的选择器。作为一个非常简单的例子:

<ul>
  <li>
    <a target="_blank" href="www.google.com">google</a>
  </li>
</ul>

<script type="text/javascript">
  var element = document.querySelector('a');
  element.href = 'http://example.com';
</script>

由于在给定标记中,目标链接是DOM中的 a元素,因此简单选择器'a'将识别它。在更复杂的文档中,您可以使用更复杂的选择器。例如:

document.querySelector('ul > li > a')

甚至:

document.querySelector('a[href="www.google.com"]')

由于您还使用jQuery标记了问题,因此您也可以使用相同的选择器概念。类似的东西:

$('a').attr('href', 'http://example.com');

或:

$('a[href="www.google.com"]').attr('href', 'http://example.com');

答案 2 :(得分:0)

更精确,并使其仅适用于特定的锚元素

$("body").ready(function() {
  $("ul >li >a:contains("google").attr("href", "http://www.stackoverflow.com/")
})