Вход

Просмотр полной версии : Передать скрипт через скрипт


Искорка
27.07.2019, 13:26
Здравствуйте, уважаемые гуру!
Подскажите, пожалуйста, непонятливой как лучше разбросать скрипт блоков адсенс по страницам статичного сайта. Делаю простейшим образом, но на некоторых сайтах не работает:
<div class="abc">
var abc = document.querySelector(".abc");
abc.innerHTML = '<script async src="https://pagead2.googlesyndication.com/pag...'
Буду благодарна за помощь.

MC-XOBAHCK
27.07.2019, 15:10
Если рекламный блок размещён не на всех страницах где подключается скрипт, можно сделать проверку на наличие блока .abc
<div class="abc"></div>

Скрипт
var abc = document.querySelector(".abc");
if (abc) {
abc.innerHTML = '<script async src="https://pagead2.googlesyndication.com/pag...';
}

------------------
Если скрипт отрабатывает до загрузки html документа (это когда файл скрипта подключается в блоке head), то нужно добавить слушатель на событие DOMContentLoaded
document.addEventListener('DOMContentLoaded', function() {
var abc = document.querySelector(".abc");
if (abc) {
abc.innerHTML = '<script async src="https://pagead2.googlesyndication.com/pag...';
}
});

----------------
Если рекламных блоков (<div class="abc") несколько на странице - цикл forEach:
document.addEventListener('DOMContentLoaded', function() {
var ads = document.querySelectorAll(".abc");
ads.forEach(function(el) {
el.innerHTML = '<script async src="https://pagead2.googlesyndication.com/pag...';
});
});

Искорка
28.07.2019, 09:05
Спасибо Вам большое!