Domanda

Ho usato la risposta a questa domanda per scorrere automaticamente un registro di combattimento per il mio gioco HTML5 in basso:

ComePer scorrere automaticamente fino alla fine del div quando vengono aggiunti i dati?

Se voglio disabilitare brevemente questo mentre una persona fa clic per scorrere verso l'alto e visualizzare il registro, come dovrei fare?

Il codice che sto usando è:

//autoscroll combat log

window.setInterval(function() {
  var elem = document.getElementById('log');
  elem.scrollTop = elem.scrollHeight;
}, 500);
.

Cordiali saluti, Cobwebs

Modifica: il codice sopra è collegato a un semplice intervallo in un div:

<div>
    <span id='log'></span>
</div>
.

stilizzato per avere una barra di scorrimento:

span#log {

    display: block;
    font-family: courier, sans;
    margin: auto;
    border:1px solid black;
    width:600px;
    height:200px;
    overflow:auto;
    background-color:black;
    color: lime;
    text-align: left;

}
.

È stato utile?

Soluzione

setinterval () restituisce un ID, conQuel ID è possibile utilizzare clearinterval () per fermarlo

var intervalID = window.setInterval(function() {
  var elem = document.getElementById('log');
  elem.scrollTop = elem.scrollHeight;
}, 500);
.

E poi questo

window.clearInterval(intervalID);
.

piccola demo

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top