Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何在ajax成功时重新加载DFP广告?_Jquery_Ajax_Google Dfp - Fatal编程技术网

Jquery 如何在ajax成功时重新加载DFP广告?

Jquery 如何在ajax成功时重新加载DFP广告?,jquery,ajax,google-dfp,Jquery,Ajax,Google Dfp,背景故事: 每次新的搜索结果完成时,服务器都会返回整个页面的HTML。这包括广告(具有新的目标、ID等) 我需要从DFP重新加载一个广告,它位于搜索结果包装器内(内容通过AJAX更新)。这是我当前的代码: “严格使用”; var$=require('jquery'); 要求(“./dfp事件”); var={}; module.exports=广告; //组件配置 var COMPONENT_ATTR=‘数据公告’; 变量组件_选择器='['+组件_属性+']; var LAZY_INIT_SE

背景故事: 每次新的搜索结果完成时,服务器都会返回整个页面的HTML。这包括广告(具有新的目标、ID等)

我需要从DFP重新加载一个广告,它位于搜索结果包装器内(内容通过AJAX更新)。这是我当前的代码:
“严格使用”;
var$=require('jquery');
要求(“./dfp事件”);
var={};
module.exports=广告;
//组件配置
var COMPONENT_ATTR=‘数据公告’;
变量组件_选择器='['+组件_属性+'];
var LAZY_INIT_SELECTOR='[data advision INIT=“LAZY”];
var SIZE_MAPPING_ATTR='数据广告大小映射';
var SIZE_DEFAULT_ATTR='数据广告大小默认值';
var ADUNIT_PATH_ATTR='data ADUNIT PATH';
var CATEGORIES_URL_ATTR='数据广告类别URL';
var谷歌标签服务https://www.googletagservices.com/tag/js/gpt.js';
var USER_ACCEPTED_COOKIES_ATTR='数据广告具有用户接受的COOKIES';
var REFRESH_AD_ATTR='数据广告刷新';
advisions.create=函数(元素){
var分量=此;
advisions.loadGoogleTagServices();
window.googletag.cmd.push(函数(){
window.googletag.pubads().setCookieOptions(advisions.getCookieOptions(elements));
window.googletag.pubads().collapseEmptyDivs(true);
window.googletag.enableServices();
[]forEach.call(元素、函数(元素){
var config=advisions.getAdConfig(元素);
advisions.instances.push(元素);
element.id=config.id;
addSlot(config);
广告。refreshAdAfterScroll(元素);
广告。RefreshAdaftResultsUpdate();
});
window.googletag.enableServices();
window.googletag.cmd.push(函数(){
window.googletag.on('gpt-slot_rendered',函数(e、级别、消息、服务、插槽){
var slotId=slot.getSlotId();
var$slot=$('#'+slotId.getDomId());
//DFP添加了两个iFrame,一个用于调用脚本,另一个用于显示广告。我们需要一个不隐藏的iFrame
if($slot.find('iframe:not([id*=hidden]))
.map(函数(){返回this.contentWindow.document;})
.find('正文')
.children().长度>0
) {
$slot.find('iframe').contents().find('body').addClass('redesign');
}
});
});
});
bindEvents();
};
advisions.bindEvents=函数(){
//这是在搜索结果完成后触发的
$(文档).on('ResultUpdate',函数(元素){
log('gottgis');
//这里是我想要获取新数据属性并重新加载DFP的地方。
});
};
advisions.refreshAdAfterScroll=函数(元素){
var refreshAttr=(element.getAttribute(REFRESH_AD_ATTR.toLowerCase());
var maxAdHeight=650;
var-atEnd=false;
var point2=($('['+REFRESH\u AD\u ATTR+']').offset().top)+maxAdHeight);
var lastScrollTop=0;
var scrolledToPosition=false;
if(refreshtattr!=“true”){
返回;
}
$(窗口)。滚动(函数(){
var currentTopPosition=$(this.scrollTop();
if($(窗口).scrollTop()+$(窗口).height()>$(文档).height()-maxAdHeight){
atEnd=真;
}
如果(currentTopPositionvar iInterval = 600000; // 10 Minutes
setInterval(function() {
    // Send DFP refresh request
    googletag.pubads().refresh();
}, iInterval);