我花时间回顾了很多关于这个主题的讨论,但没有找到我的问题的答案。
在我的网站中,我正在尝试优化我的网页加载速度,我想要做的一种方法是将我的广告脚本移到页面底部,以允许我的内容首先加载。我仍然希望广告显示在页面中间。
广告代码目前位于页面中间的脚本块中,看起来像这样
<div id="topAd">
<script>
document.write('<s' + 'cript lang' + 'uage="jav' + 'ascript" src="' + src + '"></' + 'scr' + 'ipt>');
</script>
</div>
我想要做的是在页面底部的这样的事情
<script>
var script = document.createElement('script');
script.src = src;
jQuery('#topAd').append(script);
</script>
不幸的是,这总是会在页面底部加载内容,而不是在“topAd”div中。任何人都可以解释为什么会这样吗?
答案 0 :(得分:2)
您的广告脚本正在使用document.write生成内容,因此它会在调用后显示在页面上已有的任何内容之后显示。
您可以将原始内容放在底部,然后移动它吗?
<div id="yourRequiredDiv"></div>
<!-- more content -->
<div id="topAd">
<script>
document.write('<s' + 'cript lang' + 'uage="jav' + 'ascript" src="' + src + '"></' + 'scr' + 'ipt>');
</script>
</div>
<script type="text/javascript">
$('#yourRequiredDiv').append( $('#topAd') );
</script>
</body>
那会有用吗?
答案 1 :(得分:1)
您的脚本必须是:
<script type="text/javascript">
var topad = $('#topAd');
$('#yourRequiredDiv').append( topad );
</script>
答案 2 :(得分:-2)
尝试使用iFrame。
在底部添加一个脚本标记,用于替换iframe的位置,以便iframe服务于在第一步中创建的页面。
document.getElementById('iframeId').contentWindow.location.replace('your-page-that-serves-the-ad-script');