我尝试将mraid项目上传到Google的DoubleClick工作室,并注意到mraid.expand()事件无法正常工作。该广告应该是一个应用内扩展横幅,基本上在第一次之后,mraid.expand()实际上不会扩展到全屏,而是扩展到横幅本身。现在的解决方案就是:
var isFirstTime = true;
...
if(isFirstTime) {
mraid.expand();
isFirstTime = false;
} else {
mraid.expand();
if (window.parent) window.parent.mraid.expand();
}
我注意到因为DoubleClick将所有内容嵌入到图层中,所以关闭按钮实际上位于包含我们上传的代码的父级中,因此需要window.parent.mraid.expand()来正确触发expand() 。这看起来真的太乱了,我想知道是否有人以前见过这个问题或有更好的解决方案。