Javascript change recharge page

charge une page en javascript

var url ='http://example.com';

// à utilser de préférence
window.location.href=url;

//  remplace aussi l'entrée dans l'historique du navigateur (bouton back faussé)
window.location.replace(url);

window.location.assign(url);

// ne pa sutiliser
window.location = url;
document.location....

Javascript évènements

<button id="monbouton" name="button">Click me</button>
<script>
  function faire_un_truc(){
    // faire quelque chose
    alert('truc fait');
  }
  document.getElementById('monbouton').addEventListener('click', faire_un_truc);
    //ou
  document.querySelector('#monbouton').addEventListener('click', faire_un_truc);
    // pour enlever
  document.querySelector('#monbouton').removeEventListener('click', faire_un_truc);
    // avec la fonction incorporé
  document.querySelector('#monbouton').addEventListener("click", function(){
     alert('truc fait');
  });
    // idem avec référence à l'objet appelant (le bouton devient rouge)
  document.querySelector('#monbouton').addEventListener("click", function(){
     this.style.backgroundColor = "red";
  });
</script>
// Autre façon code plus facile à maintenir car le bouton appelle l'action
// avec les listener il n'est pas rare de s'y perdre
<button  onClick="faire_un_truc();">Click me</button>

javascript promise

Méthode pour exécuter du code asynchrone

<button name="button" onClick="testPromise();">Click me</button>
<div id="log"></div>
<script>
	$('#message1').html('promise page charg&eacute;e')
		
	'use strict';
	var comptePromesse = 0;

	function testPromise() {
		var thisComptePromesse = ++comptePromesse;
		
		var log = document.getElementById('log');
		log.insertAdjacentHTML('beforeend', thisComptePromesse + ') Started (<small>Debut du code synchrone</small>)<br/>');

	  // on crée une nouvelle promesse :
		var p1 = new Promise(
			// La fonction de résolution est appelée avec la capacité de 
			// tenir ou de rompre la promesse
			function(resolve, reject) {  
				var tst;
				log.insertAdjacentHTML('beforeend', thisComptePromesse + ') Promise started (<small>Debut du code asynchrone</small>)<br/>');
				// Voici un exemple simple pour créer un code asynchrone
				/*window.setTimeout(
					function() {
					  // On tient la promesse !
					  resolve(thisComptePromesse+'aaaaaa');
					}, Math.random() * 2000 + 1000
				);*/
                                // un autre exemple
				tst=Math.random();
				if(tst>0.5){resolve('OKOKOKOK');}else{reject('NONONONONO');}
				
				//resolve('OK');
				
			}
		);

		// On définit ce qui se passe quand la promesse est tenue
		// et ce qu'on appelle (uniquement) dans ce cas
		// La méthode catch() définit le traitement à effectuer
		// quand la promesse est rompue.
		p1.then(
			// On affiche un message avec la valeur
			function(val) {
				log.insertAdjacentHTML('beforeend', val +') Promise fulfilled (<small>Fin du code asynchrone</small>)<br/>');
			}
		).catch(
			// Promesse rejetée
			function(val) { 
				//console.log("promesse rompue"+val);
				log.insertAdjacentHTML('beforeend', val +') Promise rompue (<small>Fin du code asynchrone</small>)<br/>');
			}
		);

		log.insertAdjacentHTML('beforeend', thisComptePromesse + ') Promise made (<small>Fin du code synchrone</small>)<br/>');
	}	
</script>

Clique sur bouton -> testPromise()
Création objet p1 new Promise -> function(resolve, reject) en asynchrone
p1.then est appelé par resolve(‘truc en retour’)
p1.then().catch() est appelé par reject(‘un autre truc en retour’)

http://www.html5rocks.com/en/tutorials/es6/promises/
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise

Javascript / JQUERY document.ready

Le code javascript contenu dans une page à tendance à s’exécuter au moment ou il est lu (chargé) par le navigateur. Si le code interprété utilise par exemple un DIV qui n’est pas encore arrivé au navigateur -> PB. Pour cela il existe

<script type="text/javascript">
  $(document).ready(function(){
    // code à executer
  });
</script>

Il est possible d’avoir plusieurs document.ready dans une page
Ne pas oublier jquery, avec un truc du genre

<script type="text/javascript" src="jquery-1.2.6.min.js"></script>

Clipart images photos open

finda.photo Photos libres de droits moteur de recherche par thème et couleur
openclipart 30 000 images avec moteur de recherche
findicons 150 000 icones, ico png… avec moteur de recherche
tineye.com recherche image identique ou semblable
cooltext Générateur de logo text simpliste mais parfois suffisant
icones.pro 150 000 icones, ico png… avec moteur de recherche
morguefile Photos et images libres de droits avec moteur de recherche
pixabay Photos et images libres de droits avec moteur de recherche
imagebase Photos et images libres de droits avec moteur de recherche
photopin Photos et images libres de droits avec moteur de recherche
flaticon Des millier d’icones plates monochromes par thèmes, PNG, SVG; EPS, PSD, base64

Cryptage

Pour rendre illisible une portion de disque la référence était TRUECRYPT. suite à des alertes de sécurité, le développement à été arrêtée, la dernière version fiable était la 7.1a

Le développement à été repris toujours en open-source VERACRYPT

 

Stockage de mot de passe http://keepass.info/

Dans un fichier crypté, toutes vos infos sensible. copier ou partager ce fichier avec par exemple Dropbox, pour avoir ces info à disposition partout, Windows, Linux, Android, IOS, Macosx …