Est-il possible de modifier la page d'accueil du navigateur et le paramètre d'URL d'un nouvel onglet via JavaScript ou une URL à partir d'un script de page? [dupliquer]


Cette question a déjà une réponse ici:

Je veux définir la page d'accueil et le nouvel onglet URL sur Firefox et Chrome. Lorsque l'utilisateur clique sur un bouton de ma page Web, il change automatiquement la page d'accueil du navigateur.

  1. Quand nous allons à about:config sur le Firefox, nous avons toute la configuration à personnaliser. Il y a un nom de préférence browser.newtab.url - Je dois définir/modifier cette valeur à mon URL personnalisée.

Est-il possible de modifier cette valeur de chaîne par JavaScript ou via une URL sur laquelle l'utilisateur clique?

  1. Je dois changer l'URL du nouvel onglet Chrome par JavaScript ou via une URL sur laquelle l'utilisateur clique.

Je ne sais pas si c'est possible ou non.

Si vous connaissez un moyen de changer ces choses, alors dites-le.

Author: Makyen, 2015-09-15

1 answers

Réponse partielle (pour Firefox, ne pas utiliser un script de page) peut être:

var about_config = require('sdk/preferences/service');
about_config.set('browser.startup.homepage', 'http://www.stackoverflow.com');
about_config.set('browser.newtab.url',       'http://www.stackoverflow.com');

Cela entraînera about:home et about:newtab pour rediriger vers votre URL. Pourtant, il n'affectera pas about:blank. En fait, lorsque vous tapez manuellement about:home ou about:newtab (au lieu d'ouvrir un nouvel onglet ou de cliquer sur le bouton de la page d'accueil), le remplacement dans about:config ne semble toujours pas se déclencher.

require('sdk/preferences/service') expose les mêmes paramètres qui sont accessibles en tapant about:config dans la barre d'adresse.

Cependant, il semble exister un obligation d'annuler les modifications ultérieurement:

/ / Par politique AMO les préférences globales doivent être changées à leur original

var { when: unload } = require('sdk/system/unload');
unload( function() {
  about_config.set('browser.startup.homepage', oldValue);
  about_config.set('browser.newtab.url',       oldValue);
});

Si vous souhaitez suivre cette exigence, vous pouvez obtenir d'anciennes valeurs en utilisant .get() au lieu de .set().

 0
Author: Sagi, 2015-09-27 22:26:34