Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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选择div并在内部更改href_Javascript_Jquery_Html - Fatal编程技术网

Javascript选择div并在内部更改href

Javascript选择div并在内部更改href,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试使用JavaScript修改页面中的链接。我可以选择div和a元素,但不能更改href Shopify使用for循环生成这些对象,并且需要每个对象具有不同的链接 以下是HTML: <div id="tri-banner-1" class="banner-element banner-1 col-sm-4"> <a href="collections/all"><div class="home-banner">

我正在尝试使用JavaScript修改页面中的链接。我可以选择div和a元素,但不能更改href

Shopify使用for循环生成这些对象,并且需要每个对象具有不同的链接

以下是HTML:

<div id="tri-banner-1" class="banner-element banner-1 col-sm-4">
                <a href="collections/all"><div class="home-banner">                  
                  <img src='//cdn.shopify.com/s/files/1/1093/4220/t/2/assets/group_top_banner01.png?17711418137279289271' alt="">
                  <div class="banner-caption">
                    <div class="display-table">
                      <div class="display-tablecell">

                      </div>
                    </div>                        
                  </div>                 
                </div></a>                                     
              </div>  



              <div id="tri-banner-2" class="banner-element banner-2 col-sm-4">
                <a href="collections/all"><div class="home-banner">                  
                  <img src='//cdn.shopify.com/s/files/1/1093/4220/t/2/assets/group_top_banner02.png?17711418137279289271' alt="">
                  <div class="banner-caption">
                    <div class="display-table">
                      <div class="display-tablecell">

                      </div>
                    </div>                        
                  </div>                 
                </div></a>                                     
              </div>  



              <div id="tri-banner-3" class="banner-element banner-3 col-sm-4">
                <a href="collections/all"><div class="home-banner">                  
                  <img src='//cdn.shopify.com/s/files/1/1093/4220/t/2/assets/group_top_banner03.png?17711418137279289271' alt="">
                  <div class="banner-caption">
                    <div class="display-table">
                      <div class="display-tablecell">

                      </div>
                    </div>                        
                  </div>                 
                </div></a>                                     
              </div> 

这是我的JavaScript

<script type="text/javascript">

  $(window).bind("load", function() {
      window.alert("Test");
      var banner1 = document.getElementById("tri-banner-1");
      var banner1Links = banner1.getElementsByTagName("a");
      banner1Links.href="facebook.com";
  });
</script>

$(窗口).bind(“加载”,函数(){
窗口警报(“测试”);
var banner1=document.getElementById(“tri-banner-1”);
var banner1Links=banner1.getElementsByTagName(“a”);
banner1Links.href=“facebook.com”;
});

banner1Links获取一个数组值,因此您需要在该数组中循环,并为每个传递值的数组元素循环

// instead of banner1Links.href="facebook.com";

for(var i = 0; i < banner1Links.length; i += 1){
  banner1Links[i] = 'http://example.com';
}
//而不是banner1Links.href=“facebook.com”;
对于(变量i=0;i
banner1Links获取一个数组值,因此您需要在该数组中循环,并为每个传递值的数组元素循环

// instead of banner1Links.href="facebook.com";

for(var i = 0; i < banner1Links.length; i += 1){
  banner1Links[i] = 'http://example.com';
}
//而不是banner1Links.href=“facebook.com”;
对于(变量i=0;i
banner1.getElementsByTagName(“a”)返回一个值。您应该使用索引选择元素;e、 g

// set `href` of first `a` element in `bannerLinks`
banner1Links[0].href = "facebook.com";
或者迭代集合

for (var i = 0; i < bannerLinks.length; i++) {
  bannerLinks[i] = /* set `href` here */;
}
for(变量i=0;i
banner1.getElementsByTagName(“a”)返回一个值。您应该使用索引选择元素;e、 g

// set `href` of first `a` element in `bannerLinks`
banner1Links[0].href = "facebook.com";
或者迭代集合

for (var i = 0; i < bannerLinks.length; i++) {
  bannerLinks[i] = /* set `href` here */;
}
for(变量i=0;i
感谢您的快速响应!但我认为这行不通。我需要每个项目都有一个不同的like,一旦for循环生成它,html看起来就是这样。@likwidmonster“但我认为这不起作用。我需要每个项目都有一个不同的like,一旦for循环生成它,html看起来就是这样。”?每个
href
应该更改为什么?最初的问题只描述了一个单一的
href
替代物:“facebook.com”@likwidmonester Given
html
在更新的帖子中,您可能想迭代以
tri banner
开头的
id
元素,例如,
$(“[id^=tri banner]”。每个(函数(){$(this.find(“a”).attr(“href”),/*在这里设置新href*/)})
而不仅仅是
“tri-banner-1”
。这仍然会留下每个
a
元素
href
应该更改为什么以使它们不同?感谢您的快速响应!但我认为这行不通。我需要每个项目都有一个不同的like,一旦for循环生成它,html看起来就是这样。@likwidmonster“但我认为这不起作用。我需要每个项目都有一个不同的like,一旦for循环生成它,html看起来就是这样。”?每个
href
应该更改为什么?最初的问题只描述了一个单一的
href
替代物:“facebook.com”@likwidmonester Given
html
在更新的帖子中,您可能想迭代以
tri banner
开头的
id
元素,例如,
$(“[id^=tri banner]”。每个(函数(){$(this.find(“a”).attr(“href”),/*在这里设置新href*/)})
而不仅仅是
“tri-banner-1”
。这仍然会留下每个
a
元素
href
应该更改为什么以使它们不同?