(Điều duy nhất tôi có thể nghĩ đến là đây là phần tử thay vì một đối tượng jQuery trong $("...").each(function)
-calls, như $(element)
thường được sử dụng sau đó chỉ là phần tử.Và điều cực kỳ nhỏ đó chỉ là về nó
Ví dụ ở trên (giản thể và tôi biết rằng có những cách tốt hơn nhiều khác để làm điều này, tôi chỉ không thể nghĩ ra một ví dụ tốt hơn bây giờ):
// Make all divs that has foo=bar pink.
$("div").each(function(){
if($(this).attr("foo") == "bar"){
$(this).css("background", "pink");
}
});
each
là một chức năng mà phải mất một hàm là tham số, hàm đó được gọi một lần cho mỗi phần tử phù hợp. nction được thông qua, this
đề cập đến phần tử DOM trình duyệt thực tế, nhưng tôi thấy rằng bạn thường sẽ muốn sử dụng một số hàm jQuery trên mỗi phần tử, do đó phải sử dụng $(this)
. Nếu điều này đã được đặt thành những gì $(this)
là, bạn sẽ nhận được mã ngắn hơn và bạn vẫn có thể truy cập đối tượng phần tử DOM bằng cách sử dụng this.get(0)
. Bây giờ tôi thấy lý do cho mọi thứ như họ đang có, cụ thể là viết $(this)
thay vì điều này, hầu như không cồng kềnh, và trong trường hợp bạn có thể làm những gì bạn muốn làm với phần tử DOM theo cách nó nhanh hơn cách nó có thể có được, và cách khác sẽ không nhanh hơn trong trường hợp bạn muốn $(this)
.)
Bạn mất tôi ở đó. Tôi nghĩ rằng tôi biết những gì bạn có ý nghĩa, nhưng, bạn có thể giải thích nó tốt hơn một chút? – Juan
Juan: Tôi đã thêm một ví dụ rất lớn và giải thích chi tiết-block, hy vọng tinh thể rõ ràng. – svinto