IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
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í.
Avatar
g52
Člen
Avatar
g52:28.8.2019 15:39

Ahoj, potřebuji poradit se zobrazením DIV-u v jiném DIV-u

Zkusil jsem:
var div = document.query­SelectorAll ('#temp > div#a10');
document.getE­lementById('ma­in').innerHTML = div;

Chci docílit: Mám div#temp, uvnitř toho divu je mimo jiné taky div#a10' který potřebuji vložit do DIV#main.

Editováno 28.8.2019 15:41
 
Odpovědět
28.8.2019 15:39
Avatar
Odpovídá na g52
Neaktivní uživatel:29.8.2019 2:25

Použij appendChild metodu rodičovského elementu.

https://developer.mozilla.org/…/appendChild

Nahoru Odpovědět
29.8.2019 2:25
Neaktivní uživatelský účet
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:29.8.2019 11:06

var div = document.query­SelectorAll ('#temp > div#a10');
// Var nepis do jednoho radku s prirazenim, kdyz nemusis.
// A mas to stejne blbe querySelectorAll vybira array ne element, pokud bys pogoogloval dokumentaci
document.getE­lementById('ma­in').innerHTML = div;
// A tohle je uplne nesmysl. S elementem nemuzes pracovat jako 'string'. InnerHTML prijjima stringy.
// A bylo by fajn, kdyz pouzivas querySelector, pouzivat ho mozna i pro element. Ale nevim, no, getelement by melo mohlo byt rychlejsi. Ale mel bys zas prehlednejsi, jednotnejsi kod

var arr, el_inp, el_out;
arr = document.querySelectorAll ('#temp > div#a10');
alert(arr) // vypise array / object
alert(arr[0]) // vypise element nebo (null nebo undefined - kdyz neexistuje)
el_inp = arr[0];
el_out = document.getElementById('main');
el_out.innerHTML = el_inp.innerHTML; // prepise
el_out.innerHTML += el_inp.innerHTML; // prida na konec
el_out.innerHTML = el_out.innerHTML + el_inp.innerHTML; // prida na konec
el_out.appendChild(el_inp) // prida na konec // https://developer.mozilla.org/en-US/docs/Web/API/Node/appendChild

Jo, to appendChild by melo byt prave rychlejsi nez innerHTML, protoze nemusi prevadet html string na objekty typu element. Ale zkopiruje si primo element.

Editováno 29.8.2019 11:08
 
Nahoru Odpovědět
29.8.2019 11:06
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 3 zpráv z 3.