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

116
Views
¿La página web se congela en Safari tanto en iOS como en OSX cuando la página se vuelve a cargar?

Estoy usando un iPhone 11 Pro con iOS 15.3.1.

Estoy tratando de averiguar por qué cuando visito mi sitio web, Safari se congela la mayor parte del tiempo cuando se carga la página. A veces, la página se carga la primera vez que la visito, pero al volver a cargarla, básicamente se congela sin interacción.

Cuando conecto el iPhone a una Mac y uso el inspector de Safari para conectarme a la página web en el iPhone, el inspector está básicamente en blanco en todas las pantallas. Si voy a la pestaña "Elementos", no aparece nada. Si voy a la pestaña "Consola" e intento ejecutar Javascript, no sucede nada cuando presiono enter.

En OSX, puedo ver un comportamiento similar, excepto que puedo abrir el inspector antes de visitar la página. En este caso, cuando se congela, puedo ver algunos elementos en la pestaña "Elementos", pero eso es todo. Cualquier tipo de interacción que intento hacer en el inspector da como resultado que no suceda nada.

Estoy un poco perdido. ¿Cómo puede ser tan terrible la experiencia de desarrollo para un sistema operativo/navegador tan popular y cómo puedo evitar que el inspector no funcione? No puedo replicar esta congelación en nada además de Safari.

Para ser absolutamente claro en mi pregunta:

¿Cuál es su proceso para depurar una página web en Safari cuando se encuentra en un estado en el que el inspector ya no interactúa con la página web?

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

0

Hice una amplia división y conquista de mi aplicación, comentando el código de nivel superior y trabajando hacia abajo sin comentar hasta que encontré la línea exacta que causa la congelación.

Parece que llamar a HTMLInputElement.setSelectionRange() dentro de una función de controlador de eventos onfocus provocó un bucle sincrónico infinito en Safari, tal vez Safari difumina sincrónicamente la entrada y vuelve a enfocar por alguna razón cuando se llama a esa función. Y en la recarga de la página, Safari intentaba enfocarse en una entrada con ese código automáticamente. Esa es mi suposición al menos, eliminar setSelectionRange() resuelve el problema de congelación.

Afortunadamente, la congelación fue bastante consistente, por lo que el enfoque de divide y vencerás funcionó. Desafortunadamente, el inspector realmente debería haber hecho su trabajo y se dio cuenta de que la página estaba bloqueada y me dijo en qué función se rompió la ejecución del código cuando Javascript se vio obligado a detenerse, como lo harían Chrome o Firefox.

Si alguien tiene alguna idea mejor para depurar este tipo de problemas en Safari además del equivalente de programación de una prueba de cortocircuito, con gusto aceptaré la respuesta.

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!