2013-10-12 3 views
0

내 페이지의 헤더와 JavaScript에서 모든 광고 슬롯을 정의하고 있습니다. 해당 광고 슬롯의 위치에 따라 해당 광고 슬롯 중 일부를 새로 고침하고 싶습니다. 페이지.GPT로 새로 고침하고 싶은 광고를 어떻게 타겟팅합니까?

는 여기이 순간에이 작업은 다음과 같습니다

googletag.cmd.push(function() { 
    slot1 = googletag.defineSlot('/1234/example', [[728, 90], 'gpt-divId1') 
    .addService(googletag.pubads()); 
    slot2 = googletag.defineSlot('/1234/example', [[300, 250], 'gpt-divId2') 
    .addService(googletag.pubads()); 
    slot3 = googletag.defineSlot('/1234/example', [[300, 250], 'gpt-divId3') 
    .addService(googletag.pubads()); 
googletag.pubads().enableSingleRequest(); 
googletag.pubads().collapseEmptyDivs(); 
googletag.enableServices(); 

나는 다음과 같은 각 사업부의 data-gpt-slot 속성에 그 정의 슬롯의 이름을 넣어 해요 : <div attr="slot1" id="gpt-divId1">. 내가 수동으로 googletag.pubads().refresh([slot1,slot2])를 호출하면 별도의 자바 스크립트에서

, 나는 그 광고 것, 특정 영역 내에서 모든 data-gpt-slot 값 목록을 가져오고 googletag.pubads().refresh();

에 추가 내 DOM 통해 실행하려고 해요 새로 고침, jQuery를 통해 해당 문자열을 작성하려고하면 재생되지 않습니다.

var gptdivs = []; 
    $('.myContainer .gpt-holder').each(function(){ 
    gptdivs.push($(this).attr('data-gpt-slot')); 
    }); 
    googletag.pubads().refresh([gptdivs]); 

가 나는 등 $(this).attr('data-gpt-slot')slot1, slot2의 속성에 대한 뭔가를 누락 의심?

답변

2

문제는 잘못 새로 고침 방법을 사용하려고하는 것입니다 시도는 문제의 원인이 여기에 깊은 배열을 생각합니다. 실제 광고 단위 인스턴스는 문자열로만 사용되는 것이 아니라 인수로 사용됩니다.

대신을 시도해보십시오하는 광고 단위를 새로 고치려면 다음 코드를

var adunits = {}; 

adunits['slot1'] = googletag.defineSlot('/1234/example', [[728, 90], 'gpt-divId1').addService(googletag.pubads()); 
adunits['slot2'] = googletag.defineSlot('/1234/example', [[300, 250], 'gpt-divId2').addService(googletag.pubads()); 
adunits['slot3'] = googletag.defineSlot('/1234/example', [[300, 250], 'gpt-divId3').addService(googletag.pubads()); 

을 그리고이된다 :

var gptdivs = []; 
$('.myContainer .gpt-holder').each(function(){ 
    gptdivs.push(adunits[$(this).attr('data-gpt-slot')]); 
}); 
googletag.pubads().refresh(gptdivs); 
+0

내 새로 고침 코드가 별도의 파일에 저장되었으므로 전역으로 변경해야했지만 돈은 내게 맞았습니다. - 고마워요. –

1

나는

refresh([gptdivs]) 

그냥

refresh(gptdivs) 
+0

불행하게도, 나는 아무 소용이 몇 시간 전에 시도했다. –

관련 문제