Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在单击时激发JavaScript像素_Javascript_Image - Fatal编程技术网

如何在单击时激发JavaScript像素

如何在单击时激发JavaScript像素,javascript,image,Javascript,Image,我正在尝试获取Javascript像素 <script language='JavaScript1.1' src='http://pixel.tag.com/event/js?mt_id=123456789&mt_adid=123456&v1=&v2=&v3=&s1=&s2=&s3='></script> 单击“提交”按钮后触发,类似于您可以在本页上找到的内容。(我知道这可能需要构建一个简单的“谢谢”页面,这

我正在尝试获取Javascript像素

<script language='JavaScript1.1' src='http://pixel.tag.com/event/js?mt_id=123456789&mt_adid=123456&v1=&v2=&v3=&s1=&s2=&s3='></script> 

单击“提交”按钮后触发,类似于您可以在本页上找到的内容。(我知道这可能需要构建一个简单的“谢谢”页面,这没关系,但像素不能触发onClick

此外,我需要将来自不同字段的文本传递到像素捕获的v1、v2等变量

<p>First Name <span class="orng">*</span><br />
<span class="wpcf7-form-control-wrap first-name"><input type="text" name="first-name" value="" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required" size="40" /></span> </p>
名字*


我对此有点陌生,也不是一名开发人员,但我了解它在概念上的工作原理,因此非常感谢您的帮助!

从以前使用像素开始,我推荐以下内容作为一个广泛的解决方案。首先使用一个JavaScript字符串变量,该变量将收集相应的信息?mt_id=123456789&mt_adid=123456&v1=&v2=&v3=&s1=&s2=&s3=。如果您已经构建了它,那就太好了

<script type='text/javascript'>
    var track = new Image();
    track.src="http://pixel.tag.com/event/js?self=" + dataString;
</script>

var track=新图像();
track.src=”http://pixel.tag.com/event/js?self=“+数据串;

如果看到另一个处理相同问题的示例会有所帮助,请尝试通读。

从以前处理像素开始,这里是我推荐的一个广泛的解决方案。从收集适当信息的JavaScript字符串变量开始?mt_id=123456789&mt_adid=123456&v1=&v2=&v3=&s1=&s2=&s3=。如果您已经构建了它,那就太好了

<script type='text/javascript'>
    var track = new Image();
    track.src="http://pixel.tag.com/event/js?self=" + dataString;
</script>

var track=新图像();
track.src=”http://pixel.tag.com/event/js?self=“+数据串;

如果看到另一个处理相同问题的示例会有所帮助,请尝试通读。

这里的技巧不是“跟踪像素”,而是填充参数值

这里的问题是,您现在必须构建一个指向.js文件的字符串,然后将参数和值构建成字符串,将它们全部连接起来,构建一个脚本标记,并将url指向您构建的值,因此一个丑陋的(按js purist标准)解决方案可能如下所示:

<form id="ContactForm">
    <input name="first-name">
    <input name="last-name">
    <button id="my-button" type="submit">sign up</button>
</form>

<script>

    // the button you want to listen to
var button = document.getElementById("my-button"),
    // assuming your form has the id "ContactForm"
    contact = window.ContactForm,

    // create a <script> tag, like the one that's hard-coded now
    script = document.createElement("script"),
    // find whatever element contains the first <script> on the page -- usually <head> or <body>
    parent = document.getElementsByTagName("script")[0],

    // as much of the tracking URL that you know will NEVER change
    url = "//analytics.tag.com/event/tracking.js?mt_id=123456&mt_adid=123abc";


button.onclick = function () {

    var full_url = "",
        v1,
        v2;

    v1 = contact["first-name"];
    v2 = contact["last-name"];

    full_url = url + "&v1=" + v1 + "&v2=" + v2;

    script.src = full_url;
    parent.appendChild(script);

};

</script>
现在,当您单击该按钮时,它将阻止表单提交(将您带到下一页),直到您收集所有表单值,将它们填充到脚本的URL中,将脚本放在页面上,并等待服务器获取请求和响应

这是以非常丑陋的跨浏览器(IE6+/Safari3+)兼容格式完成的。
如果你有一个像样的JS,让他做得比这更好,否则我会哭

如果您需要在下一页收集数据(例如,在服务器处理付款后,您需要计算销售的实际利润),最好使用服务器的语言:

// php
"<script src=\"....?v1=$profit&v2=$product_id\"></script>";
//php
"";

希望这能有所帮助。

这里的诀窍不是“跟踪像素”,而是填充参数值

这里的问题是,您现在必须构建一个指向.js文件的字符串,然后将参数和值构建成字符串,将它们全部连接起来,构建一个脚本标记,并将url指向您构建的值,因此一个丑陋的(按js purist标准)解决方案可能如下所示:

<form id="ContactForm">
    <input name="first-name">
    <input name="last-name">
    <button id="my-button" type="submit">sign up</button>
</form>

<script>

    // the button you want to listen to
var button = document.getElementById("my-button"),
    // assuming your form has the id "ContactForm"
    contact = window.ContactForm,

    // create a <script> tag, like the one that's hard-coded now
    script = document.createElement("script"),
    // find whatever element contains the first <script> on the page -- usually <head> or <body>
    parent = document.getElementsByTagName("script")[0],

    // as much of the tracking URL that you know will NEVER change
    url = "//analytics.tag.com/event/tracking.js?mt_id=123456&mt_adid=123abc";


button.onclick = function () {

    var full_url = "",
        v1,
        v2;

    v1 = contact["first-name"];
    v2 = contact["last-name"];

    full_url = url + "&v1=" + v1 + "&v2=" + v2;

    script.src = full_url;
    parent.appendChild(script);

};

</script>
现在,当您单击该按钮时,它将阻止表单提交(将您带到下一页),直到您收集所有表单值,将它们填充到脚本的URL中,将脚本放在页面上,并等待服务器获取请求和响应

这是以非常丑陋的跨浏览器(IE6+/Safari3+)兼容格式完成的。
如果你有一个像样的JS,让他做得比这更好,否则我会哭

如果您需要在下一页收集数据(例如,在服务器处理付款后,您需要计算销售的实际利润),最好使用服务器的语言:

// php
"<script src=\"....?v1=$profit&v2=$product_id\"></script>";
//php
"";

希望有帮助。

Oops!谷歌浏览器找不到pixel.tag.com
JS pixel=javascript@user2288602这仍然没有意义…什么没有意义?@user2288602什么是“JavaScript像素”这个短语模棱两可,需要进一步解释。
Oops!谷歌浏览器找不到pixel.tag.com
JS pixel=javascript@user2288602这仍然没有意义…什么没有意义?@user2288602什么是“JavaScript像素”?这个短语模棱两可,需要进一步解释。抱歉,仍然没有完全理解。为什么我不能将v1=&v2=&v3=&s1=&s2=&s3=变量设置为表单中收集的变量名?即
v1=“first name”&v2=“last name”&v3=&s1=&s2=&s3
您可以。收集变量时,将它们附加到字符串中。例如,设置var firstName=“John Doe”时,请确保将其附加到查询字符串中。因此..类似于queryString=queryString+”&v1=”+firstNameSorry,仍然不太明白。为什么我不能将v1=&v2=&v3=&s1=&s2=&s3=变量设置为表单中所收集内容的变量名?即
v1=“first name”&v2=“last name”&v3=&s1=&s2=&s3
您可以。在收集变量时,将它们附加到字符串中。例如,当您设置var firstName=“John Doe”确保将其附加到查询字符串中。因此..类似于queryString=queryString+“&v1=”+firstname谢谢你的信息!我觉得这比必要的要复杂得多。为什么我不能从表单中获取变量,从检查页面元素中提取变量,然后像这样将它们传递到像素中…
v1=&v2=&v3=&s1=&s2=&s3=
变量等于表单中收集的变量名?即
v1=“first name”&v2=“last name”&v3=&s1=&s2=&s3
@user2288602这正是我的代码所做的。你不能在将
标记硬编码在HTML中的同时这样做,因为它会在浏览器读取该行HTML时立即触发,因此你要么需要使用JavaScript(参见上面的代码)以编程方式编写它,要么你不需要