// Eine Prüffunktion definieren -- hier löschen wir alles, was nicht von // perl-community.de kommt: var sd = function (ck) { return !ck.host.match(/perl-community\.de$/); }; // Die relevanten XPCOM-Schnittstellendefinitionen laden: var ICookieManager = Components.interfaces.nsICookieManager; var ICookie = Components.interfaces.nsICookie; // Das Cookiemanager-Objekt auslesen und den JavaScript-Wrapper // des zurückgegebenen Objektes an die korrekte XPCOM-Schnittstelle binden: var cm = Components.classes["@mozilla.org/cookiemanager;1"].getService().QueryInterface(ICookieManager); // Einen Cache für die zu löschenden Cookies anlegen: var dc = []; // Einen Enumerator über alle Cookies holen: var ce = cm.enumerator; // Alle Cookies durchlaufen und die zu löschenden speichern: while (ce.hasMoreElements()) { if (sd(ce.getNext().QueryInterface(ICookie))) dc[dc.length] = ck; } // Alle zu löschenden Cookies tatsächlich wegwerfen: for (var i in dc) { var ck = dc[i]; cm.remove(ck.host, ck.name, ck.path, false); }