ejemplos - ¿Cómo agregar JavaScript onClick controlador a un objeto html incrustado?
insertar codigo html con jquery (3)
Onclick debería ser minúsculo.
<embed src="svg/button.svg" id="buttonEmbed" width="95" height="53"
type="image/svg+xml" onclick="alert(''hello!'');"/>
Estoy tratando de agregar un controlador onClick a un objeto incrustado. El manejador necesita ejecutar una función que está en un archivo externo .js que está vinculado al archivo html actual a través de <script src="...
¿Debo hacer referencia a la función de forma diferente debido a que se encuentra en otro lugar?
Aquí está el código tal como se encuentra actualmente (que no funciona, pero tampoco produce ningún error):
<embed src="svg/button.svg" id="buttonEmbed" width="95" height="53"
type="image/svg+xml" onClick="buttonEvent(''buttonClicked'')"/>
Use cualquier enlace de JavaScript ( Mario Menger ya lo respondió).
Si no puede o no va a usar el enlace, puede usar lo que xil3 respondió con una modificación:
Utilice una etiqueta de anclaje vacía <a href="javascript:someFunc()"></a>
como consumidor de clics. Establezca su índice Z y su posición / tamaño para que se ubique sobre el objeto svg (para compatibilidad entre navegadores).
Tienes que implementar onclick dentro de svg y vincularlo a la función de JavaScript externo usando javascript dentro de svg. Consulte la wiki de SVG para ver ejemplos.
Actualización: Aparentemente, la wiki de SVG ya no existe. No es de extrañar que las mejores referencias que ahora puedo encontrar (rápidamente) estén en .
Esta respuesta describe cómo implementar onclick dentro de svg .