Domanda

Sto cercando di contare il numero di schede che sono aperte nel mio Google Chrome browswer con javascript. Qualcuno sa come fare questo?

ho scritto alcuni javascript che voglio ripetuto 10 volte e poi fermarsi. Al completamento di 1 iterazione, apro una nuova finestra utilizzando:

window.open("http://www.test.com");

voglio fare questo 10 volte di arresto. Forse c'è un modo migliore di quello che sto pensando ...

È stato utile?

Soluzione 3

Quindi non ho potuto trovare un modo di fare ciò che volevo così ho preso un approccio diverso. Ho detto, vediamo se google ha la possibilità in cromo per limitare il numero di schede aperte e ho trovato qualcuno ha scritto un'estensione di fare esattamente questo. Non so come abbia fatto ma funziona sicuramente. Controlled multi-tab browsing

Altri suggerimenti

Credo che il ciclo è bene, ma se si vuole tenere traccia,

var winList = new Array();
var count = 10;

for(var i=0; i < count; i++){
    winList[i] = window.open("http://www.test.com");
}

In questo modo, è possibile mantenere i riferimenti alle vostre finestre.

hth

E 'una buona cosa che le pagine web siano sandbox in modo che altri siti non possono accedere. Se sono le finestre che avete aperto con window.open è possibile salvare il riferimento si riceve alla finestra:

var win = window.open(url);

Naturalmente si potrebbe spingere questo ad un array se si sta aprendo un gran numero di finestre.

var wins = [];
//looping stuff here
wins.push(window.open(url[i]);

Guardate il Google Chrome Extensions Guida dello sviluppatore , in particolare la schede pagina e il getAllInWindow funzione

chrome.tabs.getAllInWindow(integer windowId, function callback)

Se la funzione di callback riceve una serie di schede. Significa che è possibile ottenere la sua lunghezza.

E se le schede che si desidera tenere traccia di sono forse in diverse finestre, allora avete bisogno di guardare il pagina e il getAll > funzione

chrome.windows.getAll(object getInfo, function callback)

Usa questa opzione per iterare su tutte le finestre e chiamata getAllInWindow. E tu sei a posto.

Se tutto quello che vogliamo fare è schede aperte dieci:

var i;
for (i = 0; i < 10; i++) {
    window.open("http://www.test.com");
}

Ma no, io non credo che si possa contare il numero di schede aperte dal momento che potrebbe rivelare informazioni a siti web che non si può essere utile conoscerli. (Vuoi siti web casuale che visiterai sapere quante schede che avete aperto?)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top