Realmente no hago mucho con JavaScript y esta es la primera vez que uso ClipboardJS ; sin embargo, cuando trato de obtener la identificación de mi botón, regresa indefinido. ¿Hay alguna forma de obtener la ID de un botón cuando se usa ClipboardJS?
var clipboard = new ClipboardJS('.btn'); clipboard.on('success', function(e) { console.info('Text:', e.text); console.info('ID:', this.id); console.info('Target:', e.target); }); <script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.8/clipboard.min.js"></script> <button id="someID" class="btn" data-clipboard-text="Just because you can doesn't mean you should — clipboard.js"> Copy to clipboard </button>El evento que se pasa a la función no es un evento DOM estándar que contendrá propiedades como id o target . En cambio, es un evento personalizado de ClipboardJS.
Si registra solo el evento e , puede ver las propiedades que contiene su objeto de evento personalizado. Hay una propiedad trigger que contiene el elemento y le permite obtener la identificación.
var clipboard = new ClipboardJS('.btn'); clipboard.on('success', function(e) { console.info('ClipboardJS Event:', e); console.info('Trigger:', e.trigger); console.info('Trigger ID:', e.trigger.id); }); <script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.8/clipboard.min.js"></script> <button id="someID" class="btn" data-clipboard-text="Just because you can doesn't mean you should — clipboard.js"> Copy to clipboard </button>