Я не уверен, что я нахожусь в правильном направлении, но то, чего я пытаюсь достичь, довольно сложно, по крайней мере для меня. Итак, я ищу, чтобы найти содержимое внутри тега класса html и отображать это содержимое везде, где захочу. Давайте возьмем пример онлайн-продукта на веб-сайте и предположим, что в заголовке код написан следующим образом:
< h2 class="Title">This is a product example< /h2>|| note the space had to be to show the exact code.
Да, я знаю, что могу просто использовать переменную типа:
< h2>$title< /h2>Но что, если у вас нет доступа к ней? Есть ли вероятность получить их данные, используя: getElementByClassName И затем отобразить этот контент? Я искал все, и я, к сожалению, ничего не получил, поэтому решил спросить здесь.
HTML:
<div id="container"> ABC <br />
<p class="displayThis"> I want this to be displayed again
using only JavaScript </p
</div>
Стиль:
#container { border: 1px solid; width: 200px; margin-left: 15%; background: #999; border-color: #fc0000; text-align: center; } .displayThis { background: #999; color: #fff; font-weight: bold; }
.newContent {position: fixed; bottom: 10%; снизу: 10%; right: 50%; право: 50%; font-weight: bold; font-weight: bold; } }
Автор сценария:var displayThys = document.getElementByClassName("displayThis");
document.write('\<p class="newContent">'+ displayThys +'</p>\ <br />\ ');
Вот JsFiddle
HTML
<div id="container"> ABC <br />
<p class="displayThis"> I want this to be displayed again using only JavaScript </p>
</div>
И вот сценарий
<script>
(function(){
var a = document.getElementsByClassName("displayThis");
for (var i = 0; i < a.length; i++) {
var displayAgain = a[i];
document.write('\<p class="newContent">'+ displayAgain.innerHTML +'</p>\ <br />\ ');
}
})();
</script>
Сам код вполне понятен
displayAgain.parentNode.appendChild(displayAgain.cloneNode(true));
, QED :-) Обратите внимание, что NodeList, созданный getElementsByClassName, является живым, так что это создаст бесконечное количество клонов. Лучше хранить значение i , чем получать его каждый раз.