summaryrefslogtreecommitdiff
path: root/js/dojo/dojox/analytics/plugins/mouseClick.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/dojo/dojox/analytics/plugins/mouseClick.js')
-rw-r--r--js/dojo/dojox/analytics/plugins/mouseClick.js52
1 files changed, 52 insertions, 0 deletions
diff --git a/js/dojo/dojox/analytics/plugins/mouseClick.js b/js/dojo/dojox/analytics/plugins/mouseClick.js
new file mode 100644
index 0000000..915a3a4
--- /dev/null
+++ b/js/dojo/dojox/analytics/plugins/mouseClick.js
@@ -0,0 +1,52 @@
+//>>built
+define("dojox/analytics/plugins/mouseClick", ["dojo/_base/lang","../_base", "dojo/_base/window", "dojo/on"
+], function(lang, dxa, window, on){
+ /*=====
+ dxa = dojox.analytics;
+ on = dojo.on;
+ =====*/
+
+ // window startup data
+ return (dxa.plugins.mouseClick = new (function(){
+ this.addData = lang.hitch(dxa, "addData", "mouseClick");
+
+ this.onClick=function(e){
+ this.addData(this.trimEvent(e));
+ }
+ on(window.doc, "click", lang.hitch(this, "onClick"));
+
+ this.trimEvent=function(e){
+ var t = {};
+ for (var i in e){
+ switch(i){
+ case "target":
+ case "originalTarget":
+ case "explicitOriginalTarget":
+ var props=["id","className","nodeName", "localName","href", "spellcheck", "lang"];
+ t[i]={};
+ for(var j=0;j<props.length;j++){
+ if(e[i][props[j]]){
+ if (props[j]=="text" || props[j]=="textContent"){
+ if ((e[i]["localName"]!="HTML")&&(e[i]["localName"]!="BODY")){
+ t[i][props[j]]=e[i][props[j]].substr(0,50);
+ }
+ }else{
+ t[i][props[j]]=e[i][props[j]];
+ }
+ }
+ }
+ break;
+ case "clientX":
+ case "clientY":
+ case "pageX":
+ case "pageY":
+ case "screenX":
+ case "screenY":
+ t[i]=e[i];
+ break;
+ }
+ }
+ return t;
+ }
+ })());
+}); \ No newline at end of file