如:
情况一:
<div id="div1" class="tag">
<div onclick="getNext()"></div>
<div id="div2" class="tag">
情况2
<div>
  <div id="div1" class="tag">
  <div onclick="getNext()"></div>
<div>
<div id="div2" class="tag">
情况3
<div id="div1" class="tag">
<div>
  <div onclick="getNext()"></div>
<div>
<div id="div2" class="tag">
-------------------------------------------------------
情况一:我可以用 Jquery.Next(".tag")
情况二:我可以用 Jquery.NextAll().find(".tag")
情况三:没有办法
------------
那如保写一个符合三种条件的方法呢?
谢谢

解决方案 »

  1.   

    <html>
    <head> 
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script>
    function getNext(obj){
        var l=$("*").index(obj);
        alert($("*:gt("+l+")").find(".tag").attr("id"));
        
    }
    </script>
    </head>
    <body>
    <div id="div11" class="tag"> 
    <div onclick="getNext(this)">1111</div> 
    <div id="div12" class="tag"> 
    ------------
    <div> 
      <div id="div21" class="tag"> 
      <div onclick="getNext(this)">2222</div> 
    <div> 
    <div id="div22" class="tag">
    -----------
    <div id="div31" class="tag"> 
    <div> 
      <div onclick="getNext(this)">3333</div> 
    <div> 
    <div id="div32" class="tag"> 
    </body>
    </html>
      

  2.   

    <html>
    <head> 
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script>
    function getNext(obj){
        var l=$("*").index(obj);
        alert($("*:gt("+l+"):first").attr("id"));
        
    }
    </script>
    </head>
    <body>aa
    <div id="div11" class="tag"> 1</div>
    <div onclick="getNext(this)">1111</div> 
    <div id="div12" class="tag"> 2</div>
    ------------
    <div> 3
      <div id="div21" class="tag"> 4</div>
      <div onclick="getNext(this)">2222</div> 
    </div> 
    <div id="div22" class="tag">5</div>
    -----------
    <div id="div31" class="tag"> 6</div>
    <div> 7
      <div onclick="getNext(this)">3333</div> 
    </div> 
    <div id="div32" class="tag"> 8</div>
    </body>
    </html>
      

  3.   

    <html>
    <head> 
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script>
    function getNext(obj){
        var i=0;
        var l=$("*").index(obj);
        $("*").map(function(index){
            if(this.className=="tag" && index>l && i==0) i = index;
            return;
        });
        alert($("*:eq("+i+")").text());
        
    }
    </script>
    </head>
    <body>aa
    <div id="div11" class="tag"> 1</div>
    <div onclick="getNext(this)">1111</div> 
    <div id="div12" class="tag"> 2</div>
    ------------
    <div> 3
      <div id="div21" class="tag"> 4</div>
      <div onclick="getNext(this)">2222</div> 
    </div> 
    <div id="div22" class="tag">5</div>
    -----------
    <div id="div31" class="tag"> 6</div>
    <div> 7
      <div onclick="getNext(this)">3333</div> 
    </div> 
    <div id="div32" class="tag"> 8</div>
    </body>
    </html>