我使用的JavaScript读取URL并解析参数。当我将document.write添加到页面主体时,JavaScript工作得很好。我正在尝试获取参数值并将其填充到Google JavaScript中以进行广告投放。从'frank'变量中获取参数'fire'并将其替换为此JS中的'VALUE'是理想的:GA_googleAddAttr("ad_key", "VALUE");
。
我觉得我错过了从第一个JS中获取结果并将其放在Google JS中的位置。
任何帮助将不胜感激。提前谢谢。
示例网址:http://www.example.com/test.html?frank=fire
------------ JavaScript:获取url参数------------
<script type="text/javascript">
function gup( name ){
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regexS = "[\\?&]"+name+"=([^&#]*)";
var regex = new RegExp( regexS );
var results = regex.exec( window.location.href );
if( results == null ) return "";
else return results[1];}
var frank_param = gup( 'frank' );
</script>
------------ JavaScript:google广告投放属性------------
<script type="text/javascript">
GA_googleAddAttr("ad_key", "VALUE");
</script>
ad_key =在Google DFP广告投放平台中添加
VALUE =用于定位特定网页的广告
答案 0 :(得分:1)
第一个脚本执行了大量不必要的工作,并且巧妙地不正确。
它会失败
您可以将其替换为
function gup(name) {
var params = {};
var parts = (window.location.search || '').split(/[&?]/);
for (var i = 0; i < parts.length; ++i) {
var eq = parts[i].indexOf('=');
if (eq < 0) continue;
params[decodeURIComponent(parts[i].substring(0, eq))]
= decodeURIComponent(parts[i].substring(eq+1));
}
return Object.hasOwnProperty.call(params, name)
? params[name] : null;
}
将正确地为您提供CGI参数值。
然后用
跟着它GA_googleAddAttr("ad_key", gup('frank') || '');
答案 1 :(得分:0)
GA_googleAddAttr("ad_key", frank_param);
应该可以解决问题。