百度广告管家/广告显示问题

来自站长百科
跳转至: 导航、​ 搜索

百度广告管家 | 百度广告管家使用详解 | 百度广告管家基础教程 | 百度广告管家进阶教程 |百度广告管家高级教程 |百度广告管家FAQ

Discuz!论坛中无法显示广告,如何解决?[ ]

修改Discuz!的广告加载模式为“在页面加载时直接输出广告”即可解决。

1、在后台管理中,点击“广告”导航

2、点击左侧“自定义广告”。

3、设置广告加载模式为“在页面加载时直接输出广告”。

JS中调用多个广告位,为什么只有一个能正常显示广告?[ ]

IE下,通过一个JS调用多个广告位的投放方式不可行(非IE浏览器可以)。

原因是IE浏览器自身机制的问题:在IE下,JS脚本加载的方式不是严格按照脚本块来解析并解释的,而是按照HTML字面上的脚本块进行。

因此,建议使用多个JS分别调用不同的广告位,一个JS仅调用一个广告位。

为什么广告延时加载在Firefox下无法显示?[ ]

文字、图片、Flash类型广告物料在Firefox下通过延时加载的方式,将导致无法展现。

原因如下:文字、图片、Flash类型都是动态创建iframe,用脚本将广告内容写进去的,这样创建的iframe并没有真实的地址(src)。

延时加载的原理是在别处(通常是页面底部)载入广告,然后将广告的DOM元素移到真正的广告位容器中。

当移动的DOM元素为iframe时,Firefox不记录iframe的内容,而是通过iframe的地址(src)重新请求引用页面的内容,由于iframe没有真实地址,所以无法通过这种方法实现延时加载。

那么,为什么文字、图片、Flash要放在iframe里?

为了防止与您的网站的页面的css、js冲突,代码中全局性(或重名)的设置会影响到广告的展现,反之亦然。

如何解决?

通过富媒体类型投放,可以实现延时加载。输出富媒体广告物料时,不需要创建iframe,而是直接将广告内容输出到页面,所以不存在上述的延时加载问题。


为什么投放的富媒体广告物料在漂浮和弹窗广告位上无法显示?[ ]

在漂浮或弹窗广告位上投放富媒体广告物料,如果富媒体代码中或代码引用的外部JS中包含“document.write”或 “document.writeln”,可能造成广告无法正常展现。此时,建议您在富媒体中使用dom操作的方式添加元素,并设置元素的 innerHTML。

需要注意的是:如果富媒体中使用了dom操作,在固定广告位上会基于当前广告位环境执行,因此,投放到固定广告位上的富媒体广告物料中,不建议在使用dom操作。

另外,如果富媒体广告物料只是一个js引用,例如<script src="http://www.test.com/1.js"></script>,如果要将其投放在漂浮或弹窗上,需要给其添加 body元素,即在富媒体代码中修改为:<body><script src="http://www.test.com/1.js"></script></body>

因为百度广告管家对富媒体广告物料不做任何的包装,所以当富媒体广告物料投放在漂浮、弹窗广告位上时,如果富媒体广告物料只是一个js引用,那么这个js引用会被浏览器自动放到head部分。

因此,需要强制给其添加body元素。请注意,此种情况下,该广告物料就不能在投放在固定广告位上,否则可能导致广告物料中的body元素与页面上的body元素相互冲突。

通过广告物料模板实现在Flash中轮显图片,无法显示的问题[ ]

在Flash中轮显图片,无法显示的原因一般是由于Flash跨域访问资源导致。

如果a.com的flash访问baidu.com的图片资源,如果在Flash中对图片进行BitmapData操作,例如编辑图片,或者读取图片里面像素资源,以及各种加解码等,由于跨域,将导致无法读取图片资源。

解决方案:将图片放在本地,在百度广告管家中通过“远程”选择图片即可。

广告不展现,页面出现“没有权限”的错误[ ]

一般来说,如果页面出现“没有权限”的错误,且不是弹窗广告的话,很有可能是由document.domain引起的

具体原因:

1、在页面前部投放了广告

2、广告生成一个iframe,此时iframe的domain是www.abc.com

3、在页面后部,通过document.domain = "abc.com";修改了主页面的domain为abc.com

4、由于iframe异步执行,在主页面修改了domain后,iframe才执行到“获取数据”的步骤,此时从父页面获取数据,由于2个domain不同,产生了“拒绝访问”的错误

解决方法:

需要将document.domain="abc.com";这个语句放到所有广告投放之前

IE9下弹出窗口的问题的解决方案[ ]

当页面的head部分有<base target="_blank" />标签时,目前IE9的机制,会强制把广告在新窗口打开。

解决方案:

将以下脚本放在<base target="_blank" />标签之后,广告位代码之前

(function() {
    if (!window.addEventListener || navigator.userAgent.indexOf('MSIE') < 0) {
        return;
    }
    var base = document.getElementsByTagName('base')[0];
    if (base) {
        var nextSibling = base.nextSibling,
            parent = base.parentNode;
        parent.removeChild(base);
        window.addEventListener('DOMContentLoaded', function() { parent.insertBefore(base, nextSibling); }, false);
    }
})();

参考来源[ ]

百度广告管家手册导航

百度广告管家使用详解

广告位管理|广告投放|报告设置|系统设置

百度广告管家基础教程

投放图片广告|限制弹窗广告|提升点击率|巧设漂浮广告|空闲广告位利用|设置“默认广告”|地域投放广告|批量创建广告位|按小时上下线广告

百度广告管家进阶教程

节假日广告投放|广告位尺寸|授予广告权限|邀请广告主查看报告|按频道和广告位授予权限|定向推广|广告轮播|新业务推广合作|广告复制管理

百度广告管家高级教程

模板实现复杂广告|广告和网页同时加载|定位批量投放广告|根据访客来源投放|监测链接的投放效果|提升广告加载速度

百度广告管家FAQ

广告显示问题|广告投放问题|广告收入问题