我想使用下面的Javascript在用户单击图像时捕获图像的alt属性,但是我能得到的结果总是空的。我想提取"Youtube"alt属性。
<a href="http://www.youtube.com/" title="Youtube" target="_blank">
<img src="/example" class="example" alt="Youtube">
</a>
function() {
var elem = {{element}},
attr = "alt", // change to corresponding attributes
result = (elem.getAttribute && elem.getAttribute(attr)) || null;
if( !result ) {
var attrs = elem.attributes,
l = attrs.length;
for(var i = 0; i < l; i++) {
if(attrs[i].nodeName === attr)
result = attrs[i].nodeValue;
}
}
return result;
}
我假设您上面发布的JS代码是GTM JS宏?我不确定您是否有点击侦听器或链接点击侦听器,但如果它是第二个,它必然不起作用,因为 alt 是图像的属性而不是链接。如果您有链接单击侦听器,则此 JS GTM 宏可能正常工作:
function(){
var self = {{element}};
if (typeof self.children === 'undefined' || self.children.lenght == 0 || typeof self.children[0].alt === 'undefined')
{
return '';
}
return self.children[0].alt;
}
您还可以调整自己的代码以从子img
中获取属性。