Sto provando a codificare una barra di avanzamento dell'indicatore di scorrimento in React. Ho lavorato con Jquery ma vorrei sapere come farlo con Javascript puro.Creazione di un indicatore di posizione di scorrimento in React
componentDidMount() {
window.addEventListener('scroll', this.handleScroll);
}
handleScroll() {
var winHeight = $(window).height(),
docHeight = $(document).height(),
value = $(window).scrollTop(),
max, percent;
max = docHeight - winHeight;
percent = (value/max) * 100;
this.props.updatePercent(percent);
}
Inoltre, dovrei preoccuparsi di fare questo in puro JavaScript? Mi è stato detto che Jquery non dovrebbe essere usato in React.
Grazie, funziona. Mi sto anche chiedendo se invece di usare l'altezza del corpo, potrei usare un elemento con un ID #article. Puoi dirmi come potrei farlo? Ho provato a sostituire 'var body = document.body' con var' body = document.getElementById ('story_body') ', ma l'indicatore di scorrimento non appare quando scorro fino all'articolo. – domi91c
Modificherò la mia risposta per mostrare come è fatto. La logica è leggermente diversa se si desidera ottenere la posizione di scorrimento all'interno di un elemento anziché dell'intero documento. –