WoopraTracker 未在自定义事件数据中定义
WoopraTracker is not defined in custom event data
我正在尝试在页面加载时实现 Woopra 自定义事件数据,并且我正在使用他们的指南我尝试在页面就绪上推送事件,但它总是让我没有定义 woopratracker,但是当我尝试使用它时 onClick 事件它工作正常,我认为加载 woopra 库有延迟,但是我调用它的函数在页面就绪,这意味着我的调用应该等待页面就绪后才能执行!我已经设置了超时并在 1 秒后调用了相同的函数,它工作正常,但仍然不合逻辑,有什么想法吗??谢谢:)
你是对的 - 你在页面加载之前调用woopraTracker。他们网站上的最新代码段是异步的,这意味着如果您在此代码之后立即调用woopraTracker,它可能会失败,因为wsc.async=true
告诉浏览器继续而不等待此脚本初始化。如果您事先知道要跟踪的内容,请将该代码放入woopraReady中。
在这个例子中,这正是他们所做的:http://www.woopra.com/docs/tracking/custom-event-data/。看起来您已经找到了此文档,但是您是否将代码放入woopraReady
并使用局部tracker
变量而不是全局woopraTracker
? 加载脚本后,将调用woopraReady
,因此您不会遇到遇到的问题。
如果您有其他跟踪事件的内容,那么包装woopraTracker.trackEvent()
也不会有什么坏处,以防脚本因为用户速度非常快或因为 woopra 加载错误而无法加载。
与其直接调用woopraTracker,你可以定义自己的包装器:
var pushWoopraEvent = function(e) {
// Don't screw us over if Woopra failed to load or hasn't loaded yet
if (typeof woopraTracker === 'object') {
woopraTracker.pushEvent(e);
}
};
pushWoopraEvent({name: 'Rate Song', stars: 5});
相关文章:
- d3.hexbin插件-动态定义颜色域以适应数据
- jquery数据表的自定义ko绑定
- 一台特定计算机的Ajax请求数据未定义/失败
- 自定义验证并格式化从数据数据库返回的响应-BEGINNER
- 如何从自定义对话框编辑数据网格中的选定行
- JavaScript-获取数据属性的值返回未定义的值
- 使用自定义数据属性或将数据绑定到处理程序来处理事件
- 选项中包含数据的自定义标记
- $.每个jquery循环打印一个“;未定义的“;对于getJSON请求后的每个元素,网格数据都会完美地打印出来
- ListView的ItemTemplate内的自定义HtmlControl的数据绑定失败
- MVC中关于表的自定义工具提示-每行显示数据
- 数据表自定义筛选
- 如何重新定义ws.send以捕获数据
- 有了字段的名称,我如何用空白数据初始化对象的未定义字段
- 如何设置'targets'在列中动态定义数据表
- Chart.js2.X中的条形值-数据集元数据未定义
- 使用角度图时,我可以用函数定义数据点颜色吗
- 通过传单中来自 csv 的数据定义 json 多边形的颜色
- 如何使用 sql 行 id 使用使用 JSON 编码数据定义元素
- 如何更改yui的数据表中的数据定义