2010-11-28 2 views
0

Je suis relativement novice en matière de création d'extensions Safari et je recherche des conseils sur le passage d'une variable de l'onglet actif à la barre d'outils de l'extension. J'utilise un framework appelé jsPDF qui crée des PDF en utilisant Javascript. Pour le moment, j'ai une simple barre d'outils avec un bouton à cliquer qui va générer un fichier PDF pour le nom d'un client et le produit acheté, créant un simple bordereau d'expédition. Cela fonctionne très bien, il a juste un texte d'espace réservé.Extension Safari: Passer une variable de l'onglet actif à la barre d'outils

Le nom du client et le produit acheté se trouvent dans la page principale d'un système basé sur le Web (texte brut dans un DIV appelé #name et #product). Ce que je voudrais faire, c'est quand le bouton est pressé, il obtient le nom et le produit acheté à partir du DIV (#name et #product) respectifs et le texte est défini comme une variable dans la barre d'outils. Le générateur de PDF ne fonctionne qu'avec une variable standard, j'ai donc besoin de plus d'aide pour savoir comment obtenir la barre d'outils pour obtenir le nom et le produit via un script proxy.

Si quelqu'un pouvait vous éclairer sur la façon de faire cela - j'ai lu le Guide du développeur d'extensions qui m'a été très utile mais je n'arrive pas à comprendre comment le faire.

Répondre

0

à partir du script injecté:

safari.self.tab.dispatchMessage("messageName", { messageObject }); 

la barre d'outils:

safari.self.browserWindow.addEventListener("message", messageHandler, false); 
function messageHandler(event) 
{ 
    if (event.name === "messageName") 
     doStuffHereWithMessageObject(); 
} 
Questions connexes