Comment mettre en signet une page en cliquant sur un bouton ou un bouton de lien en flex en utilisant actionscriptAjouter aux favoris
Répondre
Vous devrez utiliser javascript pour cela. Créez simplement une fonction javascript pour mettre en signet une page de votre fichier html hébergeant le fichier swf, puis appelez cette fonction à l'intérieur du fichier swf en utilisant ExternalInterface.
Voici un exemple d'une fonction javascript pour bookmarking: http://labnol.blogspot.com/2006/01/add-to-favorites-ie-bookmark-firefox.html
Voici le Flex docs sur la façon d'utiliser ExternalInterface: http://livedocs.adobe.com/flex/2/docs/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00001009.html
AFAIK, vous ne pouvez pas faire de actionscript directement. Cependant, vous pouvez appeler javascript à partir d'actionscript en ignorant la classe ExternalInterface
, et le web regorge de fonctions javascript pour créer des signets. Jetez un oeil à this, par exemple (je ne l'ai pas testé).
Un exemple de travail basé sur les informations contenues dans les réponses précédentes:
bookmarks.js (ajouter ceci à votre répertoire html-template):
function CreateBookmarkLink(title, url)
{
if (window.sidebar) { // Mozilla Firefox Bookmark
window.sidebar.addPanel(title, url,"");
} else if(window.external) { // IE Favorite
window.external.AddFavorite(url, title); }
else if(window.opera && window.print) { // Opera Hotlist
return true; }
}
Ensuite, ajoutez cette ligne à l'index . template.html:
<script src="bookmarks.js" language="javascript"></script>
maintenant vous avez du code javascript "emballage" votre F l'application lex qui peut être appelée par le code (bookmarks.mxml):
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
public function AddBookmark() : void
{
ExternalInterface.call("CreateBookmarkLink",
"Stack Overflow",
"http://www.stackoverflow.com");
}
]]>
</mx:Script>
<mx:Button x="10" y="10" label="Bookmark!" click="AddBookmark()"/>
</mx:Application>
testé sur IE.
Cette méthode Firefox ne fonctionne pas car elle force l'ouverture du signet dans la barre latérale, ce qui n'est pas le résultat souhaité. –