Agregar código onclick y adicional a un documento .js

Tengo una pregunta bastante específica. Estoy tratando de implementar un seguimiento de dominio cruzado y onclick dentro de un bloque de texto, pero parece que es posible que deba colocarse directamente en un documento .js. No tengo mucha experiencia en JS. Básicamente, el código actual se ve así:

// JavaScript Document
function popup_no_status(loc)
{
var windowW=1000
var windowH=700
s = "width="+windowW+",height="+windowH+",status=yes, resizable=yes, scrollbars=yes";
mywin = window.open(loc ,'CBE', s);
mywin.focus();
}

Lo que quiero agregar a esto es:

onclick="pageTracker._trackEvent('Button', 'Click', 'QuickSearchWidget'); pageTracker._link(this.href); return false;

¿Puedo agregarlo al final del documento antes del corchete de cierre? ¿Algunas ideas?

¡Muy apreciado!

preguntado el 08 de noviembre de 11 a las 14:11

1 Respuestas

Mientras el objeto pageTracker está definido y instanciado, puede llamar a sus métodos como cualquier otra función:

function popup_no_status(loc) {
    var s = "width=700,height=1000,status=yes, resizable=yes, scrollbars=yes";
    var mywin = window.open(loc ,'CBE', s);
    mywin.focus();

    pageTracker._trackEvent('Button', 'Click', 'QuickSearchWidget');
    pageTracker._link(this.href);
}

Además, las variables windowW y windowH no tienen sentido en su código de ejemplo: no es necesario almacenar los valores de cadena en una variable si todo lo que va a hacer es concatenarlos en otra cadena. Además, a menos que tenga la intención de mywin y s para que las variables sean globales, debe utilizar la var palabra clave antes de definirlas, que restringe las variables al alcance de la función en lugar del alcance global (todas las variables declaradas en una función sin el var las palabras clave se consideran globales).

Si el código anterior da un error como ReferenceError: pageTracker is not defined, eso significa que el código en el que pageTracker El objeto está definido o no está incluido en la página o no se ha creado una instancia.

Ahora ... en cuanto a onClick, no tengo claro qué es lo que buscas aquí. ¿Quiere que esta función se ejecute cuando alguien haga clic en el documento? ¡Eso sería bastante molesto!

respondido 08 nov., 11:19

¡Gracias por los comentarios, Chris! Básicamente, para el comando onclick, quiero capturar esto en Google Analytics, por lo que quiero que envíe información a GA cuando el usuario haga clic en él. ¿El código anterior volverá a disparar a GA al hacer clic? Básicamente, este documento está configurado como un enlace . ¿Tiene sentido? - Glenn B

No, este código no se activará a menos que se llame. No creo que quieras decir que debería abrirse una ventana emergente cada vez que se hace clic en algo, y supongo que no entiendo lo que estás intentando hacer. - Chris Baker

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.