Czasami widzę konstrukcje takie jak $('<img/>')
. Czym różni się $('<img/>')
od $('img')
i gdzie mogę przeczytać więcej na ten temat?
Próbowałem, patrząc na jQuery Selectors, ale nie znalazłem nic podobnego do tego formatu.
Czasami widzę konstrukcje takie jak $('<img/>')
. Czym różni się $('<img/>')
od $('img')
i gdzie mogę przeczytać więcej na ten temat?
Próbowałem, patrząc na jQuery Selectors, ale nie znalazłem nic podobnego do tego formatu.
Funkcja jQuery jest przeciążana w celu skonstruowania nowych elementów jQuery po przekazaniu łańcucha wyglądającego jak HTML. Z docs:
Jeżeli łańcuch jest przekazywany jako parametr do $() jQuery analizuje ciąg aby sprawdzić, czy wygląda HTML (to znaczy, że zaczyna się
<tag ... >
). Jeśli nie, ciąg jest interpretowany jako wyrażenie selektora, tak jak to wyjaśniono powyżej: . Ale jeśli łańcuch wydaje się być fragmentem kodu HTML, jQuery próbuje utworzyć nowe elementy DOM zgodnie z opisem w kodzie HTML. Następnie tworzony jest obiekt jQuery i zwracany, który odnosi się do tych elementów .
$('<img/>')
tworzy obraz, natomiast $('img')
wybiera wszystkie aktualnie istniejące obrazy.
$('<img />')
tworzy nowy element <img />
do wstawienia do DOM.
$('img')
wybiera wszystkie istniejące elementy <img />
.
Generalnie, można by użyć $('<img />')
do tworzenia elementów DOM w następujący sposób:
var toAppend = $('<img />');
toAppend.appendTo($('#myDiv'));
Podczas gdy można użyć przełącznika $('img');
do obsługi CSS (jako arbitralne przykład):
$('img').css('marginTop', 20);
Powyższe spowoduje dodanie marginesu 20 pikseli na górze każdego obrazu w DOM.
'$ ('')' służy do tworzenia nowego elementu, '$ ('img')' jest selektorem dom, aby uzyskać wszystkie elementy img z dom – stecb