Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

296
Views
jQuery $(window).on("load", function() solo se inicia después de actualizar

Tenía algunos scripts ejecutándose en 1.7.1 jQuery y ahora estoy en Wordpress 1.12.4. El código no se ejecutaría. Tuve dos errores al ejecutar:

TypeError no detectado: $ no es una función https://grumans.ca/delicatessen/:1734

Esta línea en la página es $(window).load(function(){Grumans.deli.init();});

y esto

TypeError no detectado: $ no es una función https://grumans.ca/js/script.js:1162

 $(window).load(function(){ //Grumans.deli.init(); });

Encontré lo que pensé que era una solución. Alguien había publicado para un artículo diferente que usted podría hacer esto.

 jQuery(function($) { $(window).on("load", function() { Grumans.deli.init(); }); });

Esto eliminó ambos errores cuando se aplicó a la página y en el código del script, y permitió que mi código se ejecutara, pero solo si actualizo la página dos veces. Cuando llego a la página por primera vez, no pasa nada. No soy un escritor de código. ¿Alguien sabe por qué y cómo arreglar el código para que se ejecute tan pronto como se cargue la página?

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Es difícil saber exactamente qué está pasando en su caso particular sin ver también el html, pero dado lo que ha presentado, esto podría funcionar:

 jQuery(window).load(function(){ console.log('called on page load'); });

La razón por la que su primer ejemplo no funciona es porque la variable $ no se ha adjuntado al objeto de la window . Sin embargo, parece que tiene acceso a jQuery , que es otro global que jQuery adjunta a la ventana que es un alias de $ .

about 4 years ago · Juan Pablo Isaza Report

0

Está utilizando una versión de JQuery que no define $ de forma predeterminada como lo hacían las versiones anteriores. Simplemente puede reemplazar $ con JQuery si realmente desea el evento de carga, pero normalmente DOMReady es un evento más útil. Es posible que algunas de las imágenes no se hayan descargado por completo en ese momento, pero generalmente puede ejecutar cualquier otra función que manipule el DOM.

El código que ingresa se ejecuta en DOMReady, lo que significa que el controlador de Load no está instalado hasta entonces y puede ser demasiado tarde para entonces.

 jQuery(function($) { Grumans.deli.init(); });

Lo anterior debería ejecutar el código de Grumans cada vez que se carga la página, pero lo hace en el evento DOMReady.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!