我在http://chasemccoy.net/运行一个网站,在桌面上我在侧边栏中投放广告。这来自广告网络中的一些给定的JS代码。
在iPhone上查看时,网站会加载自定义布局。当广告在移动设备上显示时,我需要将该广告放入网站的页脚中。我正在使用媒体查询来更改移动布局。
我最初的解决方案是将JS添加到页脚,只需使用display:none;在桌面版上。但是,JS不会两次加载到站点。我基本上是一种新闻,可以阻止JS在移动版本上加载,直到它达到页脚代码。
对此有什么简单的解决方法吗?无论如何我不是JS。谢谢你的帮助。
编辑:这是广告的JS:
<script async type="text/javascript" src="//cdn.yoggrt.com/yoggrt.js?zoneid=1353&serve=C6SD52Y&placement=chasemccoynet" id="_yoggrt_js"></script>
这只是粘贴到HTML中我希望它出现的位置。唯一的问题是浏览器不会加载多个代码实例。
编辑:这是侧边栏的大纲。
div id="sidebar">
<div class="gravatar">
<a href="http://chasemccoy.net/"><img alt src="avatar.png" class="avatar avatar-100 photo" height="100" width="100"></a>
</div>
<ul>
<li><a href="http://chasemccoy.net/start-here">Start Here</a></li>
<li><a href="http://chasemccoy.net/colophon">Colophon</a></li>
<li><a href="http://chasemccoy.net/archive">Archive</a></li>
<li><a href="http://chasemccoy.net/rss">RSS</a></li>
</ul>
<!-- Yoggrt.com Zone Code -->
<script async type="text/javascript" src="//cdn.yoggrt.com/yoggrt.js?zoneid=1353&serve=C6SD52Y&placement=chasemccoynet" id="_yoggrt_js"></script>
<!-- End Yoggrt.com Zone Code -->
</div> <!-- Sidebar -->
答案 0 :(得分:0)
只需复制HTML代码即可。不是JS代码。并使用相同的显示:无;方法
我的意思是两次使用HTML代码。但是不要两次使用JS代码。
答案 1 :(得分:0)
你有几个选择。一种是动态创建脚本节点。在侧边栏中,您需要一个类似这样的脚本节点(未经测试):
if( ! navigator.userAgent.match(/iPhone/i)) {
var aScripts = document.getElementsByTagName('script'),
elContainer = aScripts[aScripts.length - 1].parentNode,
elScript = document.createElement("script");
elScript.type = "text/javascript";
elScript.src = "http://chasemccoy.net/wp-content/themes/lessismoresidebar/js/retina-1.1.0.js"
elContainer.appendChild(js);
}
更多here。