Как выполнять js в зависимости от разрешения экрана?
Здравствуйте, у меня шаблрнизатор смарти, мне нужно сделать так, чтобы рекламные блоки js выполнялись только тогда , когда допустим ширина экрана меньше 600, больше 600 , больше 800 и т.д , т.е для каждого разрешения экрана свой js скрипт, сейчас я просто взял в div и скрыл медиазапросами добавив display:none, но при этом выводится же на страницу целых 3 скрипта и загружаются они все, просто скрыты, соответственно время загрузки страницы увеличивается и т.д как это сделать все?
Сделайте условие: if(window.innerWidth > n){ /* тело условия */ }
И так же для остальных значений. А если нужно что бы это выполнилось при достижении определенного размера, отслеживайте событие ресайза документа.
VegasChickiChicki спасибо большое, но я не совсем понял, вот допустим реклама яндекса, что бы она запускалась когда размер экрана меньше 600 надо сделать так
<script type="text/javascript">
if(window.innerWidth < 600){ /*если нужно чтобы блок показывался, когда больше 600, то >601? */
(function(w, d, n, s, t) {
w[n] = w[n] || [];
w[n].push(function() {
Ya.Context.AdvManager.render({
blockId: "R-A-355220-28",
renderTo: "yandex_rtb_R-A-355220-28",
async: true
});
});
t = d.getElementsByTagName("script")[0];
s = d.createElement("script");
s.type = "text/javascript";
s.src = "//an.yandex.ru/system/context.js";
s.async = true;
t.parentNode.insertBefore(s, t);
})(this, this.document, "yandexContextAsyncCallbacks");
}
</script>