J'ai testé le code ci-dessous, sur 3 exemplaires de la page web ouverts en même temps, et sur la dernière version des navigateurs Chrome, Firefox et Edge sans constater aucun dysfonctionnement !
Lorsque je clique sur le bouton "Changer la couleur" d'un exemplaire de la page, les deux autres exemplaires de la page reçoivent les informations correctes.
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80 <!DOCTYPE html> <html lang="fr" dir="ltr"> <head> <!-- cache-control avec max-age=60 pour le développement uniquement --> <meta http-equiv="cache-control" content="public, max-age=60"> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no"> <meta name="author" content="Daniel Hagnoul"> <title>Test</title> <style> *, *:after, *:before { box-sizing: border-box; } /* CSS du test */ /* Fin CSS du test */ </style> <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.20.1/moment.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.20.1/locale/fr.js"></script> <script src="http://danielhagnoul.developpez.com/lib/dvjh/dvjhUtilities-1.5.1.js"></script> <script> 'use strict'; document.addEventListener( "DOMContentLoaded", ev => { // le DOM est construit, la page web n'est pas visible moment.locale( "fr" ); klog( `DOM ready : ${ new kDvjhDate() }` ); // code du test window.addEventListener( "storage", ev => { klog( "*** event storage ***") klog( "type : ", ev.type ); klog( "timeStamp : ", ev.timeStamp ); klog( "key : ", ev.key ); klog( "oldValue : ", ev.oldValue ); klog( "newValue : ", ev.newValue ); }, false ); // fin code du test }, false ); window.addEventListener( "load", ev => { // le DOM est construit et la page web est visible klog( `Window load : ${ new kDvjhDate() }` ); // code du test const arCouleurs = [ "vert", "rouge", "bleu", "violet", "jaune", "magenta" ]; k$( "#btnChanger" ).addEventListener( "click", ev => { klog( "*** btnChanger ***"); klog( "in", localStorage.getItem( "couleur" ) ); localStorage.setItem( "couleur", arCouleurs[ kIntRandom( 0, 5 ) ] ); klog( "out", localStorage.getItem( "couleur" ) ); }, false ); // fin code du test kIDUnique(); }, false ); </script> </head> <body> <main> <button id="btnChanger">Changer la couleur</button> </main> </body> </html>Licence Creative Commons Attribution 2.0 Belgique
Mis à jour 08/06/2018 à 10h40 par danielhagnoul (Licence)
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.