Lancé NoSleep au chargement d'une page

Boutfeu
Messages postés
2
Date d'inscription
vendredi 22 février 2019
Statut
Membre
Dernière intervention
25 février 2019
- 22 févr. 2019 à 12:33
jordane45
Messages postés
35488
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
- 25 févr. 2019 à 22:01
Bonjour a tous

J'ai besoin d’empêché la mise en veille des mobiles sur certaine page pour sa j'utilise nosleep.
je voudrais évité au utilisateur de devoir cliqué sur un bouton donc charger nosleep actif sur onload .
vu que je ne suis vraiment pas javascript je me tourne vers vous

<input type="button" id="toggle" value="Mise en veille interdite" />
<script src="NoSleep.min.js"></script>
<script>
var noSleep = new NoSleep();
var wakeLockEnabled = false;
var toggleEl = document.querySelector("#toggle");
toggleEl.addEventListener('click', function() {
if (!wakeLockEnabled) {
noSleep.enable(); // keep the screen on!
wakeLockEnabled = true;
toggleEl.value = "Mise en veille interdite";
document.body.style.backgroundColor = "";
} else {
noSleep.disable(); // let the screen turn off.
wakeLockEnabled = false;
toggleEl.value = "Mise en veille autorisée";
document.body.style.backgroundColor = "";
}
}, false);


en vous remerciant par avance pour toute aide
A voir également:

4 réponses

@karamel
Messages postés
1807
Date d'inscription
vendredi 9 mai 2008
Statut
Modérateur
Dernière intervention
5 mai 2022
144
25 févr. 2019 à 20:35
bonjour

il faudrait utiliser click qui permet de cliquer sur un element avec un script qui se declenchera tous les x temp en utilisant soit setTimeout soit setInterval

document.querySelector("#toggle").click

0
Boutfeu
Messages postés
2
Date d'inscription
vendredi 22 février 2019
Statut
Membre
Dernière intervention
25 février 2019

25 févr. 2019 à 21:23
Merci pour ta réponse mais je ne comprend pas pourquoi ont ne peut pas appeler
toggleEl.addEventListener('click', function()

avec un onload je sais je suis vraiment pas familier avec javascript mais j'ai encore rien trouver qui bloque la mise en veille
0
@karamel
Messages postés
1807
Date d'inscription
vendredi 9 mai 2008
Statut
Modérateur
Dernière intervention
5 mai 2022
144
25 févr. 2019 à 22:00
addEventListener ajoute un evenement a l'element mais ne cree pas l' evenement dans le sens cliquer sur l'element et onload fonctionnement uniquement au chargement de la page
0
jordane45
Messages postés
35488
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
356
25 févr. 2019 à 22:01
Bonjour,

Si tu veux lancer le NoSleep au chargement de la page, tu peux
window.onload = function (){
        var noSleep = new NoSleep();
        console.log("activer nosleep");
        noSleep.enable(); // keep the screen on!
      };


Si tu veux conserver l'utiliser, en plus, du bouton, dans ce cas :
var wakeLockEnabled = false;
      var toggleEl = document.getElementById("toggle");
      toggleEl.addEventListener('click', gererNoSleep,false);
      
      
      function gererNoSleep(){
        var noSleep = new NoSleep();
        if (!wakeLockEnabled) {
          console.log("activer nosleep");
          noSleep.enable(); // keep the screen on!
          wakeLockEnabled = true;
          toggleEl.value = "Mise en veille interdite";
          document.body.style.backgroundColor = "";
        } else {
          console.log("désactiver nosleep");
          noSleep.disable(); // let the screen turn off.
          wakeLockEnabled = false;
          toggleEl.value = "Mise en veille autorisée";
          document.body.style.backgroundColor = "";
        }
      }
      
     window.onload = function (){
        gererNoSleep();
      };

0