以JavaScript中的特定元素为目标?

以JavaScript中的特定元素为目标?,javascript,Javascript,我以前试过问这个问题,但我想我还不够具体。假设我有这样的HTML代码。如何使用纯JavaScript仅针对horizontalNAV中的标记?好的,我知道我可以用jQuery这样做 <script type="text/javascript"> $(document).ready(function(){ $('#horizontalNAV li a').click(function(){ //jQuery code here... })

我以前试过问这个问题,但我想我还不够具体。假设我有这样的HTML代码。如何使用纯JavaScript仅针对horizontalNAV中的标记?好的,我知道我可以用jQuery这样做

<script type="text/javascript">
   $(document).ready(function(){
      $('#horizontalNAV li a').click(function(){
         //jQuery code here...
      });
   });
</script>

$(文档).ready(函数(){
$(“#水平导航李a”)。单击(函数(){
//jQuery代码在这里。。。
});
});
但是,我不想要jQuery的答案,因为我想知道如何使用纯javaScript定位(“#horizontalNAV li a”)

或者你可以告诉我如何做垂直导航部分,无论是哪种方式,我都会得到它,如果我看到一个例子,或者如果它向我解释。如果我没有弄错的话,您将不得不使用document.querySelectorAll方法,如果是,那么在上面的示例中该方法是如何工作的

<div id="wrapper">
   <div id="horizontalNav">
      <ul>
       <li><a href="#"></a>item1</li>
       <li><a href="#"></a>item2</li>
       <li><a href="#"></a>item3</li>
      </ul>
   </div>
   <div class="sideBar">
      <div class="verticalNav">
         <ul>
           <li><a href="#"></a>item1</li>
           <li><a href="#"></a>item2</li>
           <li><a href="#"></a>item3</li>
         </ul>
      </div>
   </div>
</div>

  • 项目1
  • 项目2
  • 项目3
  • 项目1
  • 项目2
  • 项目3

如果没有jQuery,它会是这样的

<script type="text/javascript">
   document.addEventListener("DOMContentLoaded", function(event) {

      var elems = document.querySelectorAll('#horizontalNav li a');

      for (var i = elems.length; i--;)
           elems[i].addEventListener("click", handler, false);

   }, false);

   function handler(event) {
       //javascript code here...

       this.style.color = 'red';
   }
</script>

document.addEventListener(“DOMContentLoaded”),函数(事件){
var elems=document.querySelectorAll(“#horizontalNav li a”);
对于(var i=elems.length;i--;)
elems[i].addEventListener(“单击”,处理程序,false);
},假);
函数处理程序(事件){
//javascript代码在这里。。。
this.style.color='red';
}

如果没有jQuery,它会是这样的

<script type="text/javascript">
   document.addEventListener("DOMContentLoaded", function(event) {

      var elems = document.querySelectorAll('#horizontalNav li a');

      for (var i = elems.length; i--;)
           elems[i].addEventListener("click", handler, false);

   }, false);

   function handler(event) {
       //javascript code here...

       this.style.color = 'red';
   }
</script>

document.addEventListener(“DOMContentLoaded”),函数(事件){
var elems=document.querySelectorAll(“#horizontalNav li a”);
对于(var i=elems.length;i--;)
elems[i].addEventListener(“单击”,处理程序,false);
},假);
函数处理程序(事件){
//javascript代码在这里。。。
this.style.color='red';
}

如果没有jQuery,它会是这样的

<script type="text/javascript">
   document.addEventListener("DOMContentLoaded", function(event) {

      var elems = document.querySelectorAll('#horizontalNav li a');

      for (var i = elems.length; i--;)
           elems[i].addEventListener("click", handler, false);

   }, false);

   function handler(event) {
       //javascript code here...

       this.style.color = 'red';
   }
</script>

document.addEventListener(“DOMContentLoaded”),函数(事件){
var elems=document.querySelectorAll(“#horizontalNav li a”);
对于(var i=elems.length;i--;)
elems[i].addEventListener(“单击”,处理程序,false);
},假);
函数处理程序(事件){
//javascript代码在这里。。。
this.style.color='red';
}

如果没有jQuery,它会是这样的

<script type="text/javascript">
   document.addEventListener("DOMContentLoaded", function(event) {

      var elems = document.querySelectorAll('#horizontalNav li a');

      for (var i = elems.length; i--;)
           elems[i].addEventListener("click", handler, false);

   }, false);

   function handler(event) {
       //javascript code here...

       this.style.color = 'red';
   }
</script>

document.addEventListener(“DOMContentLoaded”),函数(事件){
var elems=document.querySelectorAll(“#horizontalNav li a”);
对于(var i=elems.length;i--;)
elems[i].addEventListener(“单击”,处理程序,false);
},假);
函数处理程序(事件){
//javascript代码在这里。。。
this.style.color='red';
}

如果#horizontalNAV是UL或OL元素,则它只能有LI元素子元素,因此可以跳过选择器的该部分。以下内容不使用querySelectorAll,因此将在不支持它的浏览器中工作:

<script>

  window.onload = function() {
    var list = document.getElementById('#horizontalNAV');
    var links = list && list.getElementsByTagName(‘a’);

    if (links) {
      for (var i=0, iLen=links.length; i<iLen; i++) {
        links[i].onclick = listener;
      }
    }
  }

  function listener() {
     // do stuff
  }

</script>

window.onload=函数(){
var list=document.getElementById(“#horizontalNAV”);
var links=list&&list.getElementsByTagName('a');
如果(链接){
对于(var i=0,iLen=links.length;i如果#horizontalNAV是UL或OL元素,则它只能有LI元素子元素,因此您可以跳过选择器的该部分。以下不使用queryselector,因此在不支持它的浏览器中都可以工作:

<script>

  window.onload = function() {
    var list = document.getElementById('#horizontalNAV');
    var links = list && list.getElementsByTagName(‘a’);

    if (links) {
      for (var i=0, iLen=links.length; i<iLen; i++) {
        links[i].onclick = listener;
      }
    }
  }

  function listener() {
     // do stuff
  }

</script>

window.onload=函数(){
var list=document.getElementById(“#horizontalNAV”);
var links=list&&list.getElementsByTagName('a');
如果(链接){
对于(var i=0,iLen=links.length;i如果#horizontalNAV是UL或OL元素,则它只能有LI元素子元素,因此您可以跳过选择器的该部分。以下不使用queryselector,因此在不支持它的浏览器中都可以工作:

<script>

  window.onload = function() {
    var list = document.getElementById('#horizontalNAV');
    var links = list && list.getElementsByTagName(‘a’);

    if (links) {
      for (var i=0, iLen=links.length; i<iLen; i++) {
        links[i].onclick = listener;
      }
    }
  }

  function listener() {
     // do stuff
  }

</script>

window.onload=函数(){
var list=document.getElementById(“#horizontalNAV”);
var links=list&&list.getElementsByTagName('a');
如果(链接){
对于(var i=0,iLen=links.length;i如果#horizontalNAV是UL或OL元素,则它只能有LI元素子元素,因此您可以跳过选择器的该部分。以下不使用queryselector,因此在不支持它的浏览器中都可以工作:

<script>

  window.onload = function() {
    var list = document.getElementById('#horizontalNAV');
    var links = list && list.getElementsByTagName(‘a’);

    if (links) {
      for (var i=0, iLen=links.length; i<iLen; i++) {
        links[i].onclick = listener;
      }
    }
  }

  function listener() {
     // do stuff
  }

</script>

window.onload=函数(){
var list=document.getElementById(“#horizontalNAV”);
var links=list&&list.getElementsByTagName('a');
如果(链接){

对于(var i=0,iLen=links.length;我看了一看关于JS和DOM的教程:看了看关于JS和DOM的教程:看了看关于JS和DOM的教程:感谢你的回答,这正是我想要的。要扩展你所拥有的,假设我想做一些简单的事情,比如make上面针对的a标签会改变颜色或是一些愚蠢的事情,我该怎么做?如果我在这方面纠缠不休或是愚蠢的话,那就很抱歉了。使用jQuery,事情会简单得多。):我已经为此添加了一些内容。请注意,您使用的ID不匹配,区分大小写。感谢您的回答,这正是我想要的。要扩展您所拥有的内容,假设我想做一些简单的事情,例如使上面针对的a标记更改颜色或其他愚蠢的事情,我将如何做?抱歉,如果我在纠缠或dumb在这里。使用jQuery,事情就简单多了):我已经为此添加了一些内容。请注意,您使用的ID不匹配,区分大小写。感谢您的回答,这正是我想要的。要扩展您所拥有的内容,假设我想做一些简单的事情,例如使上面针对的a标记更改颜色或其他愚蠢的事情,我将如何做?抱歉,如果我在纠缠或dumb说到这里。使用jQuery,事情就简单多了):我已经为此添加了一些内容。请注意,您使用的ID不匹配,区分大小写。感谢您的回答,这正是我想要的。要表达