< Сильный > Вопрос :
Я хотел бы сделать что-то похожее на это:
var code = (<ins>...</ins><script>...</script>)
document.getElementById("rightScroll").append(code);
Какой правильный синтаксис?
РЕДАКТИРОВАТЬ: Конечно, этот синтаксис является неправильным, поэтому я прошу решение здесь.
< Сильный > СИТУАЦИЯ :
Элемент будет добавляться в rightScroll
каждый раз, когда пользователь прокручивает 100vh
2 ответа
Вам нужно создать элементы как элементы dom:
var ins = document.createElement("ins");
ins.className = 'adsbygoogle';
ins.style = 'display:block;width:300px;height:600px;margin-bottom: 20px;';
var attClient = document.createAttribute('data-ad-client');
attClient.value = '...';
ins.setAttributeNode(attClient);
var attSlot = document.createAttribute('data-ad-slot');
attSlot.value = '...';
ins.setAttributeNode(attSlot);
var myScript = document.createElement("script");
myScript.setAttribute('type', 'text/javascript');
myScript.innerHTML = '(adsbygoogle = window.adsbygoogle || []).push({});';
var rightScroll = document.getElementById("rightAdScroll");
rightScroll.appendChild(ins);
rightScroll.appendChild(myScript);
Скрипка: https://jsfiddle.net/9tdn2qcd/1/
В методе getElementById
есть опечатка, и строимая вами строка не в кавычках. Я грубо процитировал предоставленную вами строку, но, вероятно, вам потребуется дополнительное внимание, где находится ваш ...
код.
var code = "<ins class=\"adsbygoogle\"" +
"style=\"display:block;width:300px;height:600px;margin-bottom: 20px;\"" +
"data-ad-client=\"...\"" +
"data-ad-slot=\"...\"></ins>" +
"<script>" +
"(adsbygoogle = window.adsbygoogle || []).push({});" +
"</script>";
document.getElementById("rightAdScroll").append(code);
// ^^ was missing "Id"
Это будет работать, только если у вас есть метод append
в вашем элементе DOM. append
является методом jQuery, но не похоже, что вы используете его напрямую в этом случае.
Я бы посоветовал сделать 2 звонка:
var myElem = document.getElementById("rightAdScroll");
myElem.appendChild(insTag);
myElem.appendChild(scriptTag);
Или используйте jQuery (если он уже загружен):
$('#rightAdScroll').append(code)
document.getElementById("rightAdScroll").append(code);
Похожие вопросы
Связанные вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript / JS) и его различных диалектах / реализациях (кроме ActionScript). Включите все соответствующие теги в свой вопрос; например, [node.js], [jquery], [json] и т. д.