在使用 jQuery 加载页面后加载广告
我为 jQuery 编写了一个插件,它将广告 JavaScript 的输出复制到容器 Div 中。
所以我将广告 JS 放在页面底部(这样它们就不会降低我的页面加载速度)在不建议的 Div 中,如下所示:
<div id="ad_loader_4" class="ads_loader"></div>
这些 div 的 id 指向容器 div。 容器 div 看起来像:
<div id="ad_4"></div>
jQuery 插件等待页面结束加载,然后抓取在不可见 div 中创建的所有元素并将它们附加到容器 div 中。
jQuery 插件看起来像:
(function($) {
// jQuery plugin definition
$.fn.adsLoader = function(params) {
// merge default and user parameters
params = $.extend( {}, params);
// traverse all nodes
this.each(function() {
// express a single node as a jQuery object
var $t = $(this);
// find id
var id = $t.attr('id');
id = id.substring(10,id.length);
$t.children().not('script').appendTo("#ad_"+id);
});
// allow jQuery chaining
return this;
};
})(jQuery);
该插件在 FF 和 Chrome 和 IE8 中运行良好...在 Adsense 和其他一些广告程序中...但问题开始于 IE7...出于某种原因,有时会加载广告在容器中,有时它们不在......
我的插件出了什么问题?
I wrote a plug-in for jQuery that copy the the output of the ads JavaScript to there container Div.
so i put the Ads JS at the bottom of the page (so they will not decrease my page load speed) within inadvisable Divs that looks like:
<div id="ad_loader_4" class="ads_loader"></div>
the id of those divs point to the container divs.
the container divs looks like:
<div id="ad_4"></div>
the jQuery plug-in waits for the page end loading and then grabs all the elements that created in the invisible divs and appends them to the container div.
The jQuery Plug-In looks like:
(function($) {
// jQuery plugin definition
$.fn.adsLoader = function(params) {
// merge default and user parameters
params = $.extend( {}, params);
// traverse all nodes
this.each(function() {
// express a single node as a jQuery object
var $t = $(this);
// find id
var id = $t.attr('id');
id = id.substring(10,id.length);
$t.children().not('script').appendTo("#ad_"+id);
});
// allow jQuery chaining
return this;
};
})(jQuery);
that plug-in works great in FF and Chrome And IE8...on Adsense and some other Ads programs...but the problems begins On IE7...From some reason, sometimes the ads loads in the containers and sometimes they not...
What is wrong with my plugin?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我简化了一点。
注意:如果您隐藏底部 div,则可能需要在用它们替换空 div 后显示它们。
I simplified a bit.
NOTE: If you are hiding the bottom divs, you may need to show them after replacing the empty divs with them.