Question

Lorsque je tape dans la barre d'adresse de Google Chrome ou de tout autre navigateur :

javascript:alert("hello");​​​​​

Ça marche, mais

javascript:document.body.style.background="Red";

n'a pas.Pourquoi donc?Comment utiliser la barre d’adresse pour changer la couleur de fond ?

Était-ce utile?

La solution

Ajouter ;void 0 après le bookmarklet.Lorsque le code a un non-undefine valeur, la page se décharge et la valeur de retour est imprimée.

Une façon courante d'écrire des bookmarklets est la suivante :

javascript:(function(){ ... code ... })();
  • La fonction anonyme renvoie undefined, donc la page ne se déchargera pas.
  • La fermeture active les variables locales, de sorte qu'aucun conflit ne puisse survenir avec les propriétés globales existantes.

A noter que dans les dernières versions des navigateurs modernes (FF, Chrome), de nombreux objets ne sont pas disponibles via le javascript:-URL dans le barre d'emplacement.

Autres conseils

Vous devez activer cette fonctionnalité dans votre configuration Chrome.Il est désactivé par défaut.

XMLForDummies est dû au fait qu'il n'y a pas d'accès à l'objet document à partir de cet endroit.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top