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

137
Views
Variable no actualizada y función duplicada

En primer lugar gracias por cualquier ayuda futura!

Estoy creando un script de notificación que modifica la pestaña del título para que aparezca el (1). Estoy extrayendo el número de alertas de una variable notificar_recuento actualizada por el sitio web.

La situación a la que me enfrento es que:

1. El (1) aparece en la pestaña pero se duplica cada vez que se ejecuta el nuevo intervalo de actualización.

ej: (1) mi sitio, luego (1) (1) mi sitio, etc...

  1. Si el valor de apply_count aumenta, la función changeTitle no actualiza el número y aparece el mismo número en la pestaña.

por ejemplo: notificar_cuenta = 1 -> (1) mi sitio -> notificar_cuenta = 2 -> (1) mi sitio

 var numb = notify_count.toString(); function changeTitle() { var newTitle = '(' + numb + ') ' + document.title; document.title = newTitle; } function newUpdate() { var update = setInterval(changeTitle, 2000); }

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

0

Debe verificar si el título ya comienza con (notify_count) . Si es así, debe reemplazar eso en lugar de agregar el conteo nuevamente al principio.

 function changeTitle() { let prefix = `(${notify_count})`; if (document.title.match(/^\(\d+)\)/) { document.title = document.title.replace(/^\(\d+)\)/, prefix); } else { document.title = `${prefix} ${document.title}`; } } } function newUpdate() { var update = setInterval(changeTitle, 2000); }

Otra opción es guardar el título original en otra variable cuando se carga la página.

 let original_title = document.title; function changeTitle() { document.title = `(${notify_count}) ${original_title}`; } function newUpdate() { var update = setInterval(changeTitle, 2000); }

about 4 years ago · Juan Pablo Isaza Report

0

Está obteniendo un título duplicado, por ejemplo (1) (1) my site

Debido a esto;

 var newTitle = '(' + numb + ') ' + document.title; document.title = newTitle;

Está configurando document.title al valor de newTitle pero está utilizando el valor existente de document.title al definir newTitle . En esencia, esta línea agrega "(num)" al document.title una y otra vez.

La primera vez a través de document.title es "Mi sitio" antes de agregar "(num)". Luego, la próxima vez que pase por document.title es "(1) Mi sitio", que luego se usa para definir newTitle como "(1) (1) Mi sitio". etc...

Para corregir esto, puede usar RegEx en changeTitle() para reemplazar solo la parte "(num)" del documento.título con String.Replace() o puede definir una nueva var en la parte superior para contener el document.title original y use esa var como base desde la cual construir su newTitle

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!