drupalorg-1.0.x-dev/js/copy_to_clipboard.js

js/copy_to_clipboard.js
(function (Drupal) {
  let initialised = false;
  Drupal.behaviors.copyToClipboard = {
    attach(context) {
      if (!initialised && context === document) {
        initialised = true;

        const copyFunction = function () {
          const input = this.previousElementSibling;
          const textToCopy = input.value;
          navigator.clipboard.writeText(textToCopy).then(
            () => {
              input.focus();
            },
            () => {
              alert(Drupal.t('Could not copy value to clipboard.'));
            },
          );
        };

        const copyButtons = document.querySelectorAll('.copy-to-clipboard');
        copyButtons.forEach((element) => {
          element.addEventListener('click', copyFunction);
        });
      }
    },
  };
})(Drupal);

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc