0

所以,我在我的公司有点负责或 A/B 测试。我们使用视觉网站优化器。一直到现在都一帆风顺。主要是 html/css 编码/编辑。现在我必须使用所谓的“自定义转换目标”。基本上,这意味着只要在 URL/页面上调用自定义 JavaScript 函数,系统就会触发。

根据 VWO 触发的正确方法是使用“onClick”:

<a onclick="if(typeof(_vis_opt_top_initialize) =='function'){  
_vis_opt_goal_conversion(200); _vis_opt_pause(500);}" href="#"><span>Sign Up</span></a>

虽然,如果你直接编辑代码,你会弄乱页面上的动态内容,所以你必须(?)使用 jquery,显然。因此,您在 VWO 系统中有一个小控制台,您可以将 javascript/jquery(和 css)放入其中。这将是使用上述代码的方法:

vwo_$('.rLink a').attr('onClick', 'if(typeof(_vis_opt_top_initialize) == "function") {     
_vis_opt_goal_conversion(208); _vis_opt_pause(500); }');

然后假设您要将 onClick 添加到 .rLink 类中的锚点。现在,这行得通。我试过了。但当然,生活并没有那么简单。现在我必须将此 onClick 函数添加到已经具有 onClick 的元素中。我知道你不能在同一个元素中有两个 onClick(?)。对?我试图“将其注入到包含锚点的 div 中,但这也不起作用。那么,我该如何解决这个小谜团?记住我无论如何都不能“动手”编辑页面,只需使用注入新代码内置的小控制台。

4

1 回答 1

1

一般来说,改变onClick属性并不是触发点击事件的好方法。相反,您应该附加一个点击事件。在 jQuery 中,这是通过.click.

尝试添加.click处理程序:

vwo_$('.rLink a').click(function(){
    if(typeof(_vis_opt_top_initialize) == "function") {     
        _vis_opt_goal_conversion(208);
    }
});

另外值得一提的是,typeof是一个操作符,而不是一个函数。这样做是没有意义的typeof(x)。你可以改为typeof _vis_opt_top_initialize === "function"

于 2013-04-03T11:08:26.530 回答