2010-08-31 36 views

Trả lời

22

sử dụng mỗi:

http://api.jquery.com/each/

$("a").each(function(){ 
    //do something with the element here. 
}); 
+5

"phần tử" mà akellehe đề cập được tham chiếu qua từ khóa 'this' bên trong hàm. –

6

jQuery cung cấp khả năng này vốn.

$('a').do_something(); 

Sẽ do_something() mỗi a trên trang. Vì vậy:

$('a').addClass('fresh'); // adds "fresh" class to every link. 

Nếu những gì bạn muốn làm đòi hỏi xem xét các thuộc tính của mỗi a cá nhân, sau đó sử dụng .each():

$('a').each(function(){ 
    var hasfoo = $(this).hasClass('foo'); // does it have foo class? 
    var newclass = hasfoo ? 'bar' : 'baz'; 
    $(this).addClass(newclass); // conditionally add another class 
}); 
3
$('a').each(function(i){ 
    $(this).attr('href','xyz'); 
}); 
0

Bạn có thể sử dụng jQuery .each() cho mục đích này:

$('a').each(function() { 
// The $(this) jQuery object wraps an instance 
// of an anchor element. 
}); 
9

Bạn có thể sử dụng .attr() với dấu chấm câu n để thay đổi một tài sản cụ thể, ví dụ:

$("a").attr("href", function(i, oldHref) { 
    return oldHref + "#hash"; 
}); 

Đây là rẻ hơn so với .each() vì bạn đang không tạo ra một đối tượng jQuery thêm bên trong mỗi lần lặp, bạn đang truy cập các thuộc tính trên phần tử DOM mà không làm điều đó.

+1

+1 để triển khai rẻ hơn –

Các vấn đề liên quan