只为特定的div运行javascript

时间:2017-04-21 15:12:09

标签: javascript html

我如何只运行特定的div / s这个javascript。感谢

var getAllAnchorTags = document.querySelectorAll('a');
getAllAnchorTags.forEach(function(item){
 var creatLink =item.getAttribute('href')+item.textContent;
 item.setAttribute('href',creatLink)
})

在这种情况下,包裹div中的所有div

<div id=wrap>
 <div id=tab1>...</div>
 <div id=tab2>...</div>
</div>

3 个答案:

答案 0 :(得分:3)

querySelectorquerySelector接受您可以用作CSS规则的所有CSS Selectors

因此,要仅选择a的后代#tab1,请使用此选项:

var getAllAnchorTags = document.querySelectorAll('#tab1 a');

答案 1 :(得分:1)

您可以根据所需的div过滤js代码,方法是为其分配一些选择器类( ex。divs-to-work-on )。

var getAllAnchorTags = document.querySelectorAll('.divs-to-work-on a');
getAllAnchorTags.forEach(function(item) {
  var creatLink = item.getAttribute('href') + item.textContent;
  item.setAttribute('href', creatLink)
})
<div id=wrap>
  <div id=tab1 class='divs-to-work-on'>...</div>
  <div id=tab2>...</div>
  <div id=tab3 class='divs-to-work-on'>...</div>
</div>

现在,您的代码仅适用于具有类divs-to-work-on

的div

答案 2 :(得分:0)

使用jquery,你可以用这样的方式引用特定div的细分

$('#wrap').find('div').each(function(){
    var innerDivId = $(this).attr('id');
    alert(innerDivId)
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>

<div id=wrap>

wrap

 <div id=tab1>one</div>
 <div id=tab2>two</div>
</div>