finomságok innerHTML
innerHTML nem olyan egyszerű, mint amilyennek tűnik, és tele van néhány finomságok, hogy megzavarja a kezdő és néha tapasztalt programozó.
Nézd meg őket.
Mert táblázatok IE9- - innerHTML csak olvasható
Az Internet Explorer 9-es és korábbi, innerHTML csak olvasható a COL elemek COLGROUP, FRAMESET, HEAD, HTML, stílus, táblázat, TBody, tfoot, thead, CÍM, TR.
Különösen, lehetetlen IE9- prisvoitinnerHTMLtablichnym elemeket, de sejteket (TD / TH).
Hozzáadása innerHTML + = végzi a másolást
Szintaktikailag felveheti szöveget a innerHTML keresztül + =:
chatDiv.innerHTML + = "
chatDiv.innerHTML + = "Hogy van?";
A gyakorlatban ezt úgy kell használni, nagy óvatossággal, mert valójában nincs összeadás és újraírása:
Az ő helyében, ez lesz az új érték innerHTML.
Mivel az új értéket a semmiből, az összes kép és egyéb forrásokat kell tölteni. A fenti példában, a második sorban újratölt smile.gif, ami előtt.
Ha chatDiv egy csomó szöveget, akkor az újraindítás lesz nagyon észrevehető.
Szerencsére vannak más módon felvenni a tartalom használata nélkül innerHTML.
Hozzáadása innerHTML + = végzi a másolást
Szintaktikailag felveheti szöveget a innerHTML keresztül + =:
chatDiv.innerHTML + = "
chatDiv.innerHTML + = "Hogy van?";
A gyakorlatban ezt úgy kell használni, nagy óvatossággal, mert valójában nincs összeadás és újraírása:
Az ő helyében, ez lesz az új érték innerHTML.
Mivel az új értéket a semmiből, az összes kép és egyéb forrásokat kell tölteni. A fenti példában, a második sorban újratölt smile.gif, ami előtt.
Ha chatDiv egy csomó szöveget, akkor az újraindítás lesz nagyon észrevehető.
Szerencsére vannak más módon felvenni a tartalom használata nélkül innerHTML.
A parancsfájlok nem kerülnek végrehajtásra
Ha vinnerHTMLest tegscript- nem lesz végrehajtva
var elem = document.getElementById ( 'én');
Példa záró tag Meg van osztva két sort, mint különben a böngésző úgy gondolja, hogy ez a vége a forgatókönyvet. A behelyezett script nem kerül végrehajtásra.
Kivétel - IE<10, в нем вставляемый скрипт выполняются, если у него есть атрибут defer (это нестандартная возможность
var elem = document.getElementById ( 'én');
elem.innerHTML = „Az IE