单击按钮后,如何插入动态跟踪像素



我指的是已解决的问题,但仅是我正在寻找的解决方案的一部分:单击按钮后如何插入Google Analytics(分析(?

单击按钮后,我想使用数据库中的动态跟踪代码。用例是选择加入插件(用于WordPress(。实际的跟踪代码来自数据库。它将由PHP查询,仅在用户提供确认后执行。

这是我的代码,到目前为止:

<script type="text/javascript">
    (function( $ ) {
        $("#button").click(function(){
            var pixel = <?php echo $pixel; ?>;
            $('head').append('<script>' + pixel + '</script>');
        });
    })( jQuery );
</script>

在编写问题并在周围挣扎时,我为自己找到了解决方案:

第一件事是链接问题中提到的脚本标签。如果我使用内联JavaScript,它将被解析,并且浏览器会出现错误。但是我需要内联JavaScript,因为我需要使用PHP查询跟踪像素。因此,我必须创建这样的脚本元素:

var script = document.createElement("script");

接下来是使用特殊字符,例如线路断路,马车回报和报价。因此,一个人可能不仅会呼应跟踪像素,还会导致解析错误,因为跟踪像素肯定包含线路断裂和引号。因此,在PHP中,我需要更换它们。最简单的方法是:

var pixel = '<?php echo (str_replace("n", "", str_replace("r", "", str_replace("'", """, $pixel)))); ?>';

因此,最终代码和工作代码将是:

<script type="text/javascript">
    (function( $ ) {
        $("#button").click(function(){
            var pixel = '<?php echo (str_replace("n", "", str_replace("r", "", str_replace("'", """, $pixel)))); ?>';
            var script = document.createElement("script");
            script.innerHTML = pixel;
            document.body.appendChild(script);
        });
    })( jQuery );
</script>

最新更新