2011-05-13 24 views
2

我有一个div内的链接列表。我试图单击该div之外的按钮,并在屏幕上显示div内的每个链接以及页面上的链接数量。不太清楚如何做到这一点..如何找到一个div中的所有链接,将它们添加到DOM并给出链接计数

JS

$(function() 
{ 
$('#button').click(function() 
{ 
    $('#links a').each(function() 
    { 
     var count = $('#links a').length; 
     $(this).appendTo('#results'); 
     $('span').text('there are ' + count 'links'); 
    }); 
}); 

}); 

HTML

<a href="#" id="button">button</a> 
    <div id="links"> 
    <a href="#">one</a> 
    <a href="#">two</a> 
    <a href="#">three</a> 



    </div> 
    <div id="results"></div> 

回答

4

本打印的结果DIV的链接数量:

$('#button').click(function(){ 
     var count = $('#links a').length; 
     $('#results').text('there are ' + count + ' links'); 
}); 

这样的举动所有链接到另一个div:

$('#button').click(function(){ 
     var elements = $('#links a') 
     $('#results').append(element); 
}); 

结合这将是(以正确的顺序:)

$('#button').click(function(){ 
     var count = $('#links a').length; 
     $('#results').text('there are ' + count + ' links'); 
     var elements = $('#links a') 
     $('#results').append(element); 
}); 

或:

$('#button').click(function(){ 
     var elements = $('#links a'); //<-- grab all links 
     $('#results') //<-- select the target div 
      .text('there are ' + elements.length + ' links'); //<-- set count 
     $('#links2').append(elements) //<-- put links in another div 
}); 

live test here

+0

的感谢!所以..我想我不需要使用。每个因为我没有绑定到每个链接的事件?我会接受答案ASA它让我 – dzilla 2011-05-13 18:20:38

+1

事实上,jQuery选择器的强大之处在于,您可以一次选择一组元素并立即采取行动,而无需自行循环。 ;) – 2011-05-13 18:21:51

+0

现在如果我想获得#links div中的链接列表,该怎么办?会这样.. $('#results')。append.html(this)? – dzilla 2011-05-13 18:24:18

相关问题