No puede obtener el elemento cliqueado en una URL javascript:
. El evento ya ha finalizado, por lo que no hay event.target
(o window.event.srcElement
para IE), y los enlaces javascript:
no se invocan con this
establecido (para que obtenga window
).
Por supuesto, si usted sabe el enlace en cuestión es id="test"
que puede hacer document.getElementById('test')
, pero sospecho que más bien falta el punto de lo que quiere hacer.
Puedo establecer solo el atributo href. No puedo configurar el evento onclick porque estos elementos son generados por lib de terceros.
Arregle o suelte la lib. javascript:
Las URL son horrores que se deberían usar nunca.
¿Se puede agregar un <script>
en otra parte de la página? Si es así, puede inyectar un controlador de eventos click
en el elemento (s) sin necesidad de ningún marcado adicional. ej .:
for (var i= document.links.length; i-->0;)
if (document.links[i] is one of the links you want to target)
document.links[i].onclick= someHandlerFunction;
function someHandlerFunction() {
alert(this);
return false;
}
De hecho, la asignación de JS (con on...
oa través de addEventListener
con attachEvent
de reserva para IE) es la forma mejor práctica de añadir controladores de eventos de todos modos.
Sería de gran ayuda si dijo por qué necesita esto, qué quiere hacer. Tal vez hay otras formas. – AlexanderMP
¿Qué es la biblioteca de terceros? –