Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

339
Vistas
Cómo cargar más datos cuando se desplaza de abajo hacia arriba jquery \ js

Estoy trabajando en un chat en vivo en un sitio de citas. Entonces, tengo una pregunta, ¿cómo puedo cargar más datos (ajax) cuando el desplazamiento llega a la parte superior del chat (div) en un dispositivo móvil? Solo necesito jquery \ vanilla js logic.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

CÓDIGO HTML

 <div class="chat-list" id="messages" #scrollMe [scrollTop]="scrolltop" (scroll)="onScrollChat()"> <div *ngFor="let message of Chats;let i = index"> </div> </div>

JS Aquí tenemos nota de la posición de la parte superior del desplazamiento [old_height] antes de cargar los datos. Una vez que los datos se cargan en el desplazamiento, tenemos que obtener una nueva posición de la parte superior del desplazamiento [new_height]. scrollTop será ele.scrollTop = new_height - old_height

*nota: no pongas estilo scroll-behaviour:smooth

 onScrollChat() { if (this.selectedTab != 0) { let ele = document.getElementById('messages'); let old_height = ele.scrollHeight; // getting height before loading more messages if (ele.scrollTop == 0) { //call chat api to load more messages this.tempMsgs = data;//loaded messages this.Chats = this.tempMsgs.concat(this.Chats) this.changeDetectionRef.detectChanges(); let new_height = ele.scrollHeight ele.scrollTop = new_height - old_height; } } }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda