J'ai écrit un script Greasemonkey pour Chrome (drag and drop comme extension) pour une utilisation avec Facebook. Je sais que Greasemonkey est en mode bac à sable et que, du moins en ce qui concerne Firefox, vous ne pouvez pas fermer les fenêtres avec des scripts, sauf si vous modifiez un paramètre dans le navigateur. Cependant, je sais que la plupart des navigateurs permettent aux fenêtres enfants d'être fermées par la fenêtre parent sans avoir besoin de la confirmation de l'utilisateur. De toute façon j'essaye d'obtenir mon manuscrit pour ouvrir une fenêtre, attrapez un morceau de texte d'un objet de HTML et fermez la fenêtre à la pression d'un bouton sur la page.Fermeture de fenêtres avec Greasemonkey
Mon code pour ouvrir la fenêtre ressemble à ceci:
function birthday(linkAddress) {
var winNew=window.open(linkAddress, "_blank", "height=100", "width=100");
/*code to be run on page*/
winNew.close()
}
La fenêtre s'ouvre bien mais j'obtiens une erreur javascript Chrome dire « ne peut pas appeler la méthode « proche » de undefined ». Je suppose qu'il y a quelque chose qui ne va pas avec mon objet lié au sandboxing de Greasemonkey, mais je suis incapable de déterminer quoi. Est-il même possible de fermer une fenêtre à l'aide d'un script Greasemonkey dans Chrome? Y a-t-il un paramètre que je dois activer? Ou mon code est-il faux? Gardez à l'esprit que ce code s'exécute à partir d'une fonction dans la page de la fenêtre principale que j'ai définie égale à une fonction dans mon script en utilisant un événement onClick d'un bouton que j'ai écrit sur la page. Des conseils pour accéder aux éléments DOM sur la page enfant seraient également appréciés.
Merci pour toute aide!
(Désolé, je suis tout à fait nouvelle, ainsi que de la pratique avec la programmation, et c'est la première fois que je l'ai écrit un script Greasemonkey)
Je pense qu'une partie de mon problème était aussi que je pensais que je courais le code de la page alors qu'en réalité je ne l'étais pas. Merci d'aider à clarifier. Je vais essayer à nouveau, en ajoutant des hacks de localisation si nécessaire. – Matt