NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 2 - Vkládání obsahu v jQuery (DOM)

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Jurajs
Člen
Avatar
Odpovídá na Jan Zamecnik
Jurajs:2.11.2016 22:54

Ten kod musí být otočený, nikde jsem ještě neviděl to, jak to máš napsané ty.... :D :D

$('#vkladani' .four').appendTo("Ahoj, já jsem APPENDTO");
 
Odpovědět
2.11.2016 22:54
Avatar
Jan Zamecnik
Člen
Avatar
Odpovídá na Jurajs
Jan Zamecnik:3.11.2016 20:36

Syntaxe je správná, viz appendTo Ale nejede mi to bez tagů.

 
Odpovědět
3.11.2016 20:36
Avatar
Jurajs
Člen
Avatar
Odpovídá na Jan Zamecnik
Jurajs:3.11.2016 23:11

Zkoušel jsem to a vysledek je:

<div id="text" style="position:absolute;">Text ktery se animuje</div>
<div id="myId"></div>

//JQUERY

            $(function(){
             $("#myId").append("Ahoj ja jsem Append").insertBefore("#text");
            });

Dal jsem to bez toho appendTo, dal jsem tam jen append.... a vysledek je:

Ahoj ja jsem Append
Text ktery se animuje

Tak nevim jestli to to nějak pomuze :)

 
Odpovědět
3.11.2016 23:11
Avatar
radian1
Tvůrce
Avatar
radian1:16.4.2017 17:17

Ahoj, proč mi nejde připojit 3. ke druhému? Co je na tom špatně?

$(function(){
   var zdroj = $('#vkladani .one');
   $('#vkladani .two').html( zdroj.html() );
   $('#vkladani .three').text( zdroj.text() );
   $('#vkladani .four').text( zdroj.html() );
   $('#vkladani .three').append("<b>Ahoj, já jsem APPEND</b>");
   $("<i>Ahoj, já jsem appendTo</i>").appendTo('#vkladani .three');
   $( $('#vkladani .two').html() ).appendTo( $('#vkladani .three') );

// následující kód nefunguje
   $( $('#vkladani .three').html() ).appendTo( $('#vkladani .two') );
});
Editováno 16.4.2017 17:18
 
Odpovědět
16.4.2017 17:17
Avatar
Jurajs
Člen
Avatar
Odpovídá na radian1
Jurajs:18.4.2017 16:00

Ahoj, zkus se kouknout na tohle a uvidis kde mas chybu https://codepen.io/anon/pen/MmaVyp
Na posledním radku to mas spatne :)

//prekontroluj si to radek po radku

var zdroj = $('#vkladani .one');
$('#vkladani .two').html( zdroj.html() );
$('#vkladani .three').text( zdroj.text() );
$('#vkladani .four').text( zdroj.html() );

$('#vkladani .three').append("<b>Ahoj, já jsem APPEND</b>");
$("<i>Ahoj, já jsem APPENDTO</i>").appendTo('#vkladani .three');
$('#vkladani .two').appendTo( $('#vkladani .three') );
$( $('#vkladani .two').html() ).appendTo( $('#vkladani .three') ); // tady je chyba :)
 
Odpovědět
18.4.2017 16:00
Avatar
Libor Sitek
Člen
Avatar
Libor Sitek:12.5.2017 21:32

Ahoj, nevím proč, ale nefungoval mi tenhle řádek:

$('#pres_before').unwrap('<article></article>');

Prohlížeč mi ho zkousl až po menší úpravě:

$('#pres_before').unwrap($('<article></article>'));

Pak ještě moc nerozumím tomuto zápisu:
A.after(B) - vloží A po B
A.insertAfter(B) - vloží B po A

Podle příkladu se při použití after element B vloží za element A, a při použití insertAfter se element A vloží za element B, takže to spíše chápu takto:
A.after(B) - vloží B za A
A.insertAfter(B) - vloží A za B

Odpovědět
12.5.2017 21:32
Když se chce, hledá se jak, když se nechce, hledá se proč
Avatar
arnost99
Člen
Avatar
arnost99:20.10.2017 1:40

Ahoj, proč funguje tento zápis:

$("<i>Ahoj, já jsem APPENDTO</i>").appendTo('#vkladani .three');

A nefunguje tento:

$("Ahoj, já jsem APPENDTO").appendTo('#vkladani .three');

Nedává mi to logiku? Nebo je pravidlo, že text musí být vždy obalen "nějakým" tagem?
Díky za vysvětlení

 
Odpovědět
20.10.2017 1:40
Avatar
Honza Bittner
Tvůrce
Avatar
Odpovídá na arnost99
Honza Bittner:20.10.2017 8:58

Myslím, že to prostě pracuje jen s elementy, resp. s HTML stringem. Což samotný text není. Viz dokumentace http://api.jquery.com/appendto/

Odpovědět
20.10.2017 8:58
FIT ČVUT alumnus :-) Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/tenhobi/ama.
Avatar
David Koníček:19.12.2017 12:41

Není tohle přesně naopak?
A.after(B) - vloží A po B
A.insertAfter(B) - vloží B po A

Nebo jsem tak natvrdlej?

Odpovědět
19.12.2017 12:41
Věř, běž a dokážeš!
Avatar
Honza Bittner
Tvůrce
Avatar
Odpovídá na David Koníček
Honza Bittner:19.12.2017 12:56

Hmm,

$(target).after(con­tentToBeInser­ted)
$(contentToBe­Inserted).inser­tAfter(target)

Opravdu by to spíše mělo být popsáno v této části opačně. V popisku už to sedí snad správně, ale tento úvod vypadá, že je opačně, opravdu. Díky, napravím.

Odpovědět
19.12.2017 12:56
FIT ČVUT alumnus :-) Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/tenhobi/ama.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 29.