2014-10-18 2 views
1

Google 태그 관리자 매크로 스크립트 (http://viget.com/advance/gtm#elementclass)가 요소의 상위 항목에 특정 클래스 값이 있는지를 확인했습니다.Google 태그 관리자의 상위 클래스

function crawlByClassName() { 
var el = {{element}}; 

while (el && el !== document.body && el.className !== 'INSERT CLASS NAME') { 
    el = el.parentElement; 
} 

return el.className === 'INSERT CLASS NAME'; 
} 

값을 기록한 다음 이름을 지정하기 위해 규칙을 수정하는 방법이 있습니까? 아니면 이것을 달성하는 다른 방법이 있습니까?

답변

0

감사합니다. @kevintechie. 귀하의 방법이 효과가있을 수 있습니다.

function() { 
return {{element}}.parentElement.className; 
} 

이 그런 규칙의 클래스 이름을 지정합니다

은 내가 매크로로 사용할 수 있습니다 여기에 또 다른 방법 https://plus.google.com/100582165749296472339/posts/fa6iKeuF6ig

을 찾을 수 있었다. 즉, 매크로가 하나만 있고 모든 클래스에 하나가 아니라는 의미입니다.

+0

두 매크로의 차이점을 기억하십시오. OP의 매크로는 클래스 이름의 모든 상위 요소를 검색합니다. 이 매크로는 존재하는 경우에만 직접 부모의 클래스 이름을 반환합니다. – kevintechie

0

규칙을 사용하여 검색 할 상위 클래스 이름을 지정할 수는 없지만 매크로를 사용할 수는 있습니다. 그런 다음

function crawlByClassName() { 
 
    var el = {{element}}; 
 
    
 
    while (el && el !== document.body && el.className !== '{{parent class}}') { 
 
     el = el.parentElement; 
 
    } 
 
    
 
    return el.className === '{{parent class}}';

당신은 할 수 : 당신이 어떤 대체 클래스 이름과 함께 작동 할 수 있도록 일반적인 위의 매크로 코드를 유지하기 위해 지팡이 경우

예를 들어, 당신은이 방법을 쓸 수있다 "parent class"라는 이름의 매크로를 만들고 값을 찾으려는 클래스 이름으로 설정하십시오. 조건에 따라 상위 클래스의 이름을 설정하려면 조회 테이블 매크로 유형을 사용할 수 있습니다.

관련 문제