Jaki jest odpowiednik getElementsByTagName()
w jQuery? Po prostu chcę utworzyć kolekcję elementów w jQuery, dzięki czemu mogę je przeglądać i robić coś z każdym elementem.Co to jest odpowiednik "getElementsByTagName" w jQuery?
Wielkie dzięki!
Jaki jest odpowiednik getElementsByTagName()
w jQuery? Po prostu chcę utworzyć kolekcję elementów w jQuery, dzięki czemu mogę je przeglądać i robić coś z każdym elementem.Co to jest odpowiednik "getElementsByTagName" w jQuery?
Wielkie dzięki!
$("tagnamehere")
Więc:
$("div").each(function() {
// do something exciting with each div
$(this).css("border", "1px solid red");
// do something by directly manipulating the wrapped DOM element
this.style.border = "1px solid red";
// do something only if this particular div has a class of 'pretty'
if($(this).hasClass("pretty")) {
$(this).text("I am the pretty one");
}
});
lub po prostu:
// apply some css to all div elements
$("div").css("border", "1px solid red");
Należy pamiętać, że podczas korzystania z jQuery, aby wybrać liczbę elementów, na przykład $("span")
, każda metoda wywoływana w obiekcie stanie się na wszystkich dopasowanych elementach. Pomyśl o tym jako o "implicit iteration" - np. $("span").hide();
spowoduje ukrycie wszystkich elementów span na stronie.
Patrz:
Wystarczy użyć selektora elementu
$('elementname')
Np
$('div')
I zrobić iteracji:
$('div').each(function(){
var $this = $(this);
//insert code here
});
Możesz nie mieć do iteracji, jednak, jak metoda wezwał kolekcji zostanie wywołana dla każdego elementu w kolekcji, więc
$('div').hide();
... spowoduje ukrycie wszystkich elementów div.
'$ (" [foo] ")' jest selektorem atrybutów Has, a nie selektorem elementów. –
Jestem pewien, że to literówka, ponieważ przykłady używają właściwego kodu, ale jest to bardzo mylące. –
@ Šime Vidas - Tak, użyłem znaku [] do wskazania symbolu zastępczego, ale zdaję sobie sprawę, że wprowadzało to w błąd! Zmieniono odpowiednio. –
Wystarczy umieścić coś takiego:
var some = $('[name="tagname"]');
Nie, to jest nieprawidłowe. Twój kod jest przykładem selektora atrybutu. Zobacz https://api.jquery.com/attribute-equals-selector/ – j08691
@ T.J. Crowder - edytowane zanim skomentowałeś. Dzięki :) – karim79
Warto zauważyć, że myślę, że chodzi tu o obiekty jQuery - a nie elementy DOM. – sje397
@ T.J. Crowder & karim79: Interesujące. A co z robieniem czegoś na konkretnym przedmiocie w kolekcji? – Shaoz