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

146
Views
enlace de ventana POPSTATE

Dado lo siguiente:

 $(window).bind("popstate", function() { alert('popstate'); });

En la primera carga, la alerta se activa con FireFox y Chrome, pero no con Safari. ¿Porqué es eso? ¿Alguien más ha visto esto y sabe cómo resolverlo mejor?

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Ver el código de pjax. pjax es una biblioteca de código abierto bastante popular ahora, por lo que la siguiente lógica podría ser la mejor para evitar este problema.

 var popped = ('state' in window.history), initialURL = location.href $(window).bind('popstate', function(event) { // Ignore inital popstate that some browsers fire on page load var initialPop = !popped && location.href == initialURL popped = true if ( initialPop ) return ...

https://github.com/defunkt/jquery-pjax/blob/master/jquery.pjax.js

over 4 years ago · Santiago Trujillo Report

0

En webkit, el evento popstate se activa al cargar la página. Para evitar esto, este sencillo trabajo funciona para mí:

Cada vez que disparo history.push(...) agrego la class historypush al body -etiqueta:

 history.push(...); $("body").addClass("historypushed");

Cuando desencadeno el evento popstate, compruebo esta clase:

 $(window).bind('popstate', function(e) { if($("body").hasClass("historypushed")) { /* my code */ } });
over 4 years ago · Santiago Trujillo Report

0

La situación ahora es al revés. Chrome ha solucionado el error y ahora activa popstate en la carga de la página, pero Firefox 4 (desde RC) se ha apartado de la especificación y ahora no activa popstate .

ACTUALIZACIÓN : la especificación de HTML5 se cambió en 2011 para indicar que el estado pop no debe activarse al cargar la página. Tanto Firefox como Chrome ahora hacen lo correcto a partir de Firefox 4 y Chrome 34 .

over 4 years ago · Santiago Trujillo 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!