logo

Extra Block Types (EBT) - Nueva experiencia con Layout Builder❗

Extra Block Types (EBT): tipos de bloques con estilo y personalizables: Presentaciones de diapositivas, Pestañas, Tarjetas, Acordeones y muchos más. Configuraciones integradas para fondo, DOM Box y plugins de JavaScript. Experimenta hoy el futuro de la construcción de diseños.

Módulos de demostración EBT Descargar módulos EBT

❗Extra Paragraph Types (EPT) - Nueva experiencia con Paragraphs

Extra Paragraph Types (EPT): conjunto de módulos basado en párrafos de forma análoga.

Módulos de demostración EPT Descargar módulos EPT

Scroll

Usando Chat GPT para reescribir código JavaScript sin jQuery

11/06/2025, by Ivan

Indicaciones para ChatGPT para reescribir jQuery a JavaScript

Si deseas reescribir código jQuery en JavaScript puro utilizando ChatGPT, accede a chat.openai.com e introduce la siguiente indicación clara y concisa:

Por favor, reescribe el siguiente código jQuery en JavaScript puro (vanilla JavaScript), manteniendo la misma funcionalidad. Asegúrate de que sea compatible con los estándares modernos de JavaScript (ES6+). Además, incluye el uso de Drupal.behaviors si aplica. [Pega aquí tu código jQuery]

Reemplaza el marcador de posición [Pega aquí tu código jQuery] por el código jQuery que deseas convertir.

A continuación se muestra un ejemplo de código jQuery a JavaScript:

(function ($, Drupal) {
  Drupal.behaviors.myBehavior = {
    attach: function (context, settings) {
      // Solo ejecutar una vez por elemento en cada carga de página
      $('.my-class', context).once('myBehavior').each(function () {
        $(this).click(function () {
          alert('Elemento clickeado: ' + $(this).text());
        });
      });

      // Ejemplo de agregar una clase dinámicamente
      $('.toggle-button', context).once('toggleBehavior').click(function () {
        $('.toggle-target').toggleClass('active');
      });
    }
  };
})(jQuery, Drupal);

Código JavaScript reescrito sin jQuery:

(function (Drupal) {
  Drupal.behaviors.myBehavior = {
    attach: function (context, settings) {
      context.querySelectorAll('.my-class').forEach(function(element) {
        if (!element.dataset.myBehaviorAttached) {
          element.dataset.myBehaviorAttached = true;
          element.addEventListener('click', function () {
            alert('Elemento clickeado: ' + element.textContent);
          });
        }
      });

      context.querySelectorAll('.toggle-button').forEach(function(button) {
        if (!button.dataset.toggleBehaviorAttached) {
          button.dataset.toggleBehaviorAttached = true;
          button.addEventListener('click', function () {
            document.querySelectorAll('.toggle-target').forEach(function(target) {
              target.classList.toggle('active');
            });
          });
        }
      });
    }
  };
})(Drupal);

 

Etiquetas