[尝试在Facebook标签中实施Facebook转化跟踪。您可以在此处查看页面http://www.facebook.com/StChristophersFellowship/app_366591783429546,问题是提交表单后无法运行单独的页面。我可以让一段javascript运行,但只能单击“提交”按钮的onclick,我认为它也已被注入HTML文档的头部。我从链接中找到了运行Javascript的答案,或单击了-如果我从单独的JS文档中调用跟踪/转换代码,此方法是否可以使用?
任何帮助将不胜感激-谢谢!
“我必须同意上面的评论,您不能调用文件,但是可以像这样加载JS文件,我不确定它是否回答了您的问题,但可能会有所帮助...哦,我在我的示例中使用了链接而不是按钮...
<a href='linkhref.html' id='mylink'>click me</a>
<script type="text/javascript">
var myLink = document.getElementById('mylink');
myLink.onclick = function(){
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "Public/Scripts/filename.js.";
document.getElementsByTagName("head")[0].appendChild(script);
return false;
}
</script>"
我尝试使用Nicolás解决方案,但从未验证过转换。
但是我发现an article (archived version)使用<noscript><img src="..." /></noscript>
中的URL描述了一种立即有效的技术。
在页面上放置元素,例如:
<div id="fb_pixel"></div>
然后声明这些CSS规则进行转换,将在您自己的跟踪代码中找到的background-image
网址更改为<noscript>
。
#fb_pixel { display:none; }
.fb_conversion
{
background-image: url('https://www.facebook.com/offsite_event.php?id=33333333333&value=0¤cy=USD');
}
[当您希望进行跟踪时(例如,在提交AJAX表单时),请使用JavaScript将fb_conversion
类添加到<div>
中。例如,使用jQuery:
$("#fb_pixel").addClass("fb_conversion");
这将使浏览器加载图像,从而跟踪您的转换。
我有一个类似的问题,我解决了它,将AJAX调用放在跟踪回调上。如下:
$(function () {
$('#btnSend').click(facebookTrackingSendClick);
});
function facebookTrackingSendClick(e) {
e.preventDefault();
var clickedElement = this;
var fb_param = {};
fb_param.pixel_id = '123';
fb_param.value = '0.00';
fb_param.currency = 'BRL';
(function () {
var fpw = document.createElement('script');
fpw.async = true;
fpw.src = '//connect.facebook.net/en_US/fp.js';
fpw.onload = function () {
// Callback here.
};
var ref = document.getElementsByTagName('script')[0];
ref.parentNode.insertBefore(fpw, ref);
})();
}