Я всего лишь пользователь, как ядро работает - хз. Но получается, что создан объект, - один экземпляр, - и он сам на себя вставляется (смотрел поведение в firebug по "втыканию" элементов в страницу). А клонируя созданный, как бы в буфер объект, мы получаем искомое.
Поправьте, плз, кто шарит в движках. |
Цитата:
|
PeaceCoder,
причем тут jQuery? так устоен DOM. <!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <button>clone text(incorrect)</button> <button>clone text(correct)</button> <button>remove clones</button> <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam in tellus eget tellus dignissim facilisis. Integer ligula arcu orci aliquam.</p> <script type="text/javascript"> var p = document.getElementsByTagName('p')[0], buttons = document.getElementsByTagName('button'), button1 = buttons[0], button2 = buttons[1], button3 = buttons[2]; var cloneP = p.cloneNode(true);// клон button1.onclick = function () { cloneP.style.border = "solid 1px red"; document.body.appendChild( cloneP );// вставляем в body один и тот же элемент }; button2.onclick = function () { var cloneOfCloneP = cloneP.cloneNode(true); cloneOfCloneP.style.border = "solid 1px yellow"; document.body.appendChild( cloneOfCloneP );// вставляем в body клон клона, таким образом каждый раз создаем новый элемент }; button3.onclick = function () { var allP = document.getElementsByTagName('p'); while ( 1 in allP ) { document.body.removeChild(allP[1]) } }; </script> </body> </html> |
Часовой пояс GMT +3, время: 06:17. |