IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Lancer nosleep automatiquement


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2002
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Lancer nosleep automatiquement
    bonjour a tous étant nul en javascript quelqu'un pourrais ? m'aider

    j'ai ce script et je voudrais le mettre dans une page et le mettre en route en onload par exemple pour qu'il bloque la mise en veille sans devoir cliquer

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <h1>NoSleep Test Page</h1>
        <script src="../dist/NoSleep.min.js"></script>
     
        <input type="button" id="toggle" value="Wake Lock is disabled" />
     
        <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 = "Wake Lock is enabled";
              document.body.style.backgroundColor = "green";
            } else {
              noSleep.disable(); // let the screen turn off.
              wakeLockEnabled = false;
              toggleEl.value = "Wake Lock is disabled";
              document.body.style.backgroundColor = "";
            }
          }, false);
        </script>

  2. #2
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 149
    Points : 252
    Points
    252
    Par défaut
    Bonjour!

    Si je comprends bien, il suffirait de créer une fonction non anonyme pour effectuer cette action, et ensuite simplement l'exécuter au lancement de la page.

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    <h1>NoSleep Test Page</h1>
     
    <script src="../dist/NoSleep.min.js"></script> 
    <input type="button" id="toggle" value="Wake Lock is disabled" />
     
    <script>
     
    var noSleep = new NoSleep();
    var wakeLockEnabled = false;
    var toggleEl = document.querySelector("#toggle");
     
    function toggleNoSleep() {
            if (!wakeLockEnabled) {
                    noSleep.enable(); // keep the screen on!
                    wakeLockEnabled = true;
                    toggleEl.value = "Wake Lock is enabled";
                    document.body.style.backgroundColor = "green";
            } else {
                    noSleep.disable(); // let the screen turn off.
                    wakeLockEnabled = false;
                    toggleEl.value = "Wake Lock is disabled";
                    document.body.style.backgroundColor = "";
            }
    }
     
    toggleEl.addEventListener('click', toogleNoSleep, false);
    toogleNoSleep();
     
    </script>

    Cependant je trouve pas ça très propre!
    Je suggérerais la créations de deux sous fonctions : enableNoSleep() et disableNoSleep()
    Elles seraient appelées dans noSleep() et c'est enableNoSleep() qui viendrait se lancer au démarrage.
    Le code deviendrait plus implicite en montrant qu'après le lancement de la page, le noSleep est actif!
    (Sinon comme toggle suggère seulement une inversion de l'état, on devrait encore faire des recherches pour comprendre que l'intention du code est de l'activer)

    Ce qui donnerait :

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <h1>NoSleep Test Page</h1>
     
    <script src="../dist/NoSleep.min.js"></script> 
    <input type="button" id="toggle" value="Wake Lock is disabled" />
     
    <script>
     
    var noSleep = new NoSleep();
    var wakeLockEnabled = false;
    var toggleEl = document.querySelector("#toggle");
     
    function toggleNoSleep() {
            if (!wakeLockEnabled)
                    enableNoSleep();
            else
                    disableNoSleep();
    }
     
    function enableNoSleep() {
            noSleep.enable(); // keep the screen on!
            wakeLockEnabled = true;
            toggleEl.value = "Wake Lock is enabled";
            document.body.style.backgroundColor = "green";
    }
     
    function disableNoSleep() {
            noSleep.disable(); // let the screen turn off.
            wakeLockEnabled = false;
            toggleEl.value = "Wake Lock is disabled";
            document.body.style.backgroundColor = "";
    }
     
    toggleEl.addEventListener('click', toogleNoSleep, false);
    toogleNoSleep();
     
    </script>

    Il est aussi plus clair de ranger tout les scripts proprement dans des fichiers séparés du HTML.

Discussions similaires

  1. Lancer Compiz automatiquement au démarrage
    Par BeWog dans le forum Debian
    Réponses: 3
    Dernier message: 08/07/2009, 12h21
  2. [BO XI] Lancer BO automatiquement tous les matins
    Par bimone dans le forum Deski
    Réponses: 2
    Dernier message: 14/11/2008, 10h46
  3. comment lancer/fermer automatiquement un script Perl?
    Par megapacman dans le forum Langage
    Réponses: 2
    Dernier message: 22/08/2006, 15h10
  4. Réponses: 5
    Dernier message: 11/07/2006, 17h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo