z jakiegoś powodu przy użyciu funkcji insertAdjacentHtml w FF Otrzymuję insertAdjacentHTMl nie jest błędem funkcji, czy istnieje alternatywa dla tego w jQuery lub jakiejś innej alternatywnej funkcji javascript?insertAdjacentHtml w jquery
Odpowiedz
jQuery używa różnych funkcji do osiągnięcia tego celu :
Przeczytaj o:
http://api.jquery.com/insertAfter/
http://api.jquery.com/append/
http://api.jquery.com/appendTo/
http://api.jquery.com/prepend/
http://api.jquery.com/prependTo/
... i więcej
bardziej w jQuery dokumentacji Manipulacja API:
http://api.jquery.com/category/manipulation/
Jeśli rozumiem prawo, chcesz dołączyć na końcu elementu DOM
można Doit z jQuery appendTo
tutaj jest dokumentacja http://api.jquery.com/appendTo/
To zależy od tego jak używasz go.
.insertAdjacentHTML("beforeBegin", ...) //$('...').before(...)
.insertAdjacentHTML("afterBegin", ...) //$('...').after(...)
.insertAdjacentHTML("beforeEnd", ...) //$('...').append(...)
.insertAdjacentHTML("afterEnd", ...) //$('...').prepend(...)
http://api.jquery.com/prepend/
Przykład kodu
$('<p class="border">PrependTo</p>').prependTo($('.main'));
$('.main').prepend('<p class="border">Prepend</p>');
$('<p class="border">AppendTo</p>').appendTo($('.main'));
$('.main').append('<p class="border">Append</p>');
$('<p class="border">Insert After</p>').insertAfter('.main');
$('<p class="border">Insert Before</p>').insertBefore('.main');
.border {
border: 1px solid #000;
margin: 10px;
padding: 5px 15px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="main border">
<p>Main</p>
</div>
celu rozszerzenia i poprawne @Adam Terlson „S answer:
Poniżej odwzorowywanie insertAdjacentHTML
position
wartości i związanego jQuery DOM insertion functions.
beforebegin
/before
document.getElementById('foo').insertAdjacentHTML("beforebegin", "<hr>")
$('#foo').before("<hr>")
afterend
/after
document.getElementById('foo').insertAdjacentHTML("afterend", "<hr>")
$('#foo').append("<hr>")
beforeend
/append
document.getElementById('foo').insertAdjacentHTML("beforeend", "<hr>")
$('#foo').append("<hr>")
afterbegin
/prepend
document.getElementById('foo').insertAdjacentHTML("afterbegin", "<hr>")
$('#foo').prepend("<hr>")
Strona MDN ma good visualization of what these mean, który wygląda tak:
<!-- beforebegin/before -->
<p>
<!-- afterbegin/prepend -->
foo
<!-- beforeend/append -->
</p>
<!-- afterend/after-->
Pomyłka w @Adam Terlson „s answer, że afterBegin
i afterEnd
zostały transponowane.
Oto działający przykład na ten temat.
$('<p class="border">PrependTo</p>').prependTo($('.main'));
$('.main').prepend('<p class="border">Prepend</p>');
$('<p class="border">AppendTo</p>').appendTo($('.main'));
$('.main').append('<p class="border">Append</p>');
$('<p class="border">Insert After</p>').insertAfter('.main');
$('<p class="border">Insert Before</p>').insertBefore('.main');
.border {
border: 1px solid #000;
margin: 10px;
padding: 5px 15px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="main border">
<p>Main</p>
</div>
- 1. Jak dobrze działa insertAdjacentHTML?
- 2. W jaki sposób insertAdjacentHTML jest o wiele szybszy od innerHTML?
- 3. Jaka jest różnica między appendChild, insertAdjacentHTML i innerHTML
- 4. Czy JQuery (...). Html() buggy w jQuery 1.3.2?
- 5. Jquery Zastąp wiersz tabeli w JQuery
- 6. jQuery jquery-tmpl roadmap
- 7. jQuery vs jQuery Mobile vs jQuery UI?
- 8. Wymuś zdarzenie w jQuery
- 9. addID w jQuery?
- 10. isset w jQuery?
- 11. Timery odliczające w jQuery
- 12. Identyfikacja $ (this) w jQuery
- 13. Przewijanie w pionie jQuery
- 14. Wiele selektory w jQuery
- 15. Parsowanie datepicker w jquery
- 16. ... (trzy kropki) w jQuery?
- 17. Naprzeciwko "scrollTop" w jQuery
- 18. edytowalne rozwijanie w jquery
- 19. ostatnie rodzeństwo w jquery?
- 20. Selektor połączeń w jQuery?
- 21. Serializowanie tablicy w Jquery?
- 22. Obsługa ciągów w jQuery
- 23. łączenie jquery w html
- 24. Użyj jQuery w HTML
- 25. Utwórz funkcję w jquery
- 26. jquery touchstart w przeglądarce
- 27. jak .Contains w jQuery
- 28. Używanie jQuery w Tampermonkey
- 29. Zamiana wierszy w JQuery
- 30. jQuery w widgecie
Jest krytyczny błąd w mapowaniu. "afterBegin' i" afterEnd' są transponowane. Dodałem poprawioną wersję [tutaj] (http://stackoverflow.com/a/40431232/168874) (ponieważ moja edycja została odrzucona). –