我正在尝试使网站适合移动设备。步骤之一是隐藏包含广告和非必要数据的右列。在CSS中,我有类似以下内容:
@media only screen {
@media handheld or (max-width: 768px) {
#column_right {display:none}
}
}
问题在于,右列包含用于显示广告的JavaScript,但仍会执行。这很糟糕,原因有两个:
1.减慢页面的加载速度。
2.违反广告联盟的服务条款(因为即使访问者看不到广告,视图仍处于注册状态)
如何防止隐藏列中的代码被执行?
编辑添加:这是我需要禁用的javascript代码块之一:
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- removed ad block name -->
<ins class="adsbygoogle"
style="display:inline-block;width:160px;height:600px"
data-ad-client="removed"
data-ad-slot="removed"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
最佳答案
如果您使用的是jQuery,则可以检查该元素是否可见。 http://api.jquery.com/visible-selector/
关于javascript - HTML,CSS,Javascript:禁止在未显示的元素中执行JavaScript,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19720666/