Page 2 sur 2

Publié : 21 juil. 2009, 17:58
par arno.
gussticier a écrit :

Code : Tout sélectionner


			if(url_temp == docAdded_URL) 
			
A mon avis, tu devrais mieux tester l'égalité des documents plutôt que des urls. Si tu ouvres un onglet sur une url déjà ouverte, c'est l'autre onglet qui sera pris en compte.
Il y a d'ailleurs les fonctions gBrowser.getBrowserIndexForDocument et gBrowser.getBrowserForDocument qui sont déjà toutes faites pour çà.
retrouver l'onglet à partir du browser (et surtout du document) est moins facile.
Bah, une fois qu'on a l'index du browser, il suffit de prendre l'onglet qui est au même index dans le tabcontainer.
Pour le savoir, j'ai fait une alerte de l'attribut TEST lorsque je clique sur l'onglet, l'attribut TEST renvoie rien...
Bizarre...

Re: Comment récupérer l'URL d'un onglet qui vient d'être ouve

Publié : 01 mars 2010, 14:02
par thibaud74
Hello,
Avez-vous trouvé la solution ? Personnellement, je place un écouteur comme ceci :

Code : Tout sélectionner

gBrowser.addEventListener("load", NVonLoad, true);
Puis je capte l'url ainsi :

Code : Tout sélectionner

function NVonLoad(event){
  dump('NVonLoad original target ' + event.originalTarget.baseURI);
}
En revanche, je trouve beaucoup plus difficile de sasir l'url de l'onglet qui vient d'être supprimé. C'est pourtant facile de capter la suppression d'un onglet :

Code : Tout sélectionner

gBrowser.tabContainer.addEventListener("TabClose", NVonTabClose, false);
Mais la récupération de l'url ne fonctionne pas :

Code : Tout sélectionner

function NVonTabClose(event){
			browser = event.target.linkedBrowser;
			// browser est l'element XUL du navigateur qui a ete supprime
			// var title = browser.title;
			var url = browser.baseURI;
			var url2 = browser.aLocation.spec;
			var url3 = browser.currentURI.spec;
			edDump("NVonTabClose: url1: " + url + " url2: " + url2 + " url3: " + url3);
}
Cf. ici pour l'exemple sur les notifications : https://developer.mozilla.org/fr/Extrai ... navigation

Merci de l'aide,
Thibaud.