Toon posts:

[Firefox] Javascript uitvoeren in locatiebalk met privileges

Pagina: 1
Acties:

Verwijderd

Topicstarter
Daar ik het vervelend vind om al mijn rss feeds een voor een te herladen, dacht ik dat ik daarvoor wel een kort scriptje kon schrijven en als bookmark kon opslaan.

Ik heb uitgevonden dat je in de locatiebalk van Firefox als volgt javascript kan uitvoeren:
JavaScript:
1
javascript:alert("hello");


Bovendien heb ik ergens een extensie gevonden die deet wat ik wilde, maar daarvoor een extra knopje introduceerde. (Iets wat ik niet wil)
De code die ik heb gevonden:
JavaScript:
1
2
3
cc = Components.classes["@mozilla.org/browser/livemark-service;1"];
var livemarks = cc.getService(Components.interfaces.nsILivemarkService);
livemarks.reloadAllLivemarks();


Heb ik als volgt aangepast om in 1 statement te passen:
JavaScript:
1
2
3
4
5
6
 
try{
    Components.classes["@mozilla.org/browser/livemark-service;1"].getService(Components.interfaces.nsILivemarkService).reloadAllLivemarks(); 
    alert("succeeded");
} 
   catch (ex) { alert ("not succeeded")};


Helaas geeft deze expressie in de locatie balk aan dat ik niet ben geslaagd. Ervan uitgaande dat het probleem was dat ik niet genoeg privileges had om dit uit te voeren heb ik dit geprobeerd:
JavaScript:
1
chrome://javascript: etc, etc. 


Helaas kreeg ik toen helemaal geen bericht meer terug.
Is er iemand die toevallig weet hoe dit op te lossen.

edit:

Ik heb net even wat de foutmelding was die ik kreeg na het normaal uitvoeren vanuit de locatiebalk ("javascript: ....."). Ik kreeg inderdaad een privilege fout:
"Permission denied to get property XPCComponents.classes"


PS. Ik weet dit niet 100% binnen de topic grenzen van dit forum valt, maar het is een soort van client-side scripting en ik geloof dat ik hier het meeste kans heb om een antwoord te vinden.

edit:

De volgende setting in about:config bepaalt of een gebruiker wel of geen dialoog krijgt te zien of hij een script wil uitvoeren of niet:
signed.applets.codebase_principal_support

ik heb deze op true gezet.
Nu kan ik mijn script uitvoeren. Echter hij gooit nog een ander foutje.
Ook opgelost, uiteindelijk script: (Werkt in combinatie met eerder genoemde aanpassing in about:config)

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
try{
 try{
  netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");     Components.classes["@mozilla.org/browser/livemark-service;1"].getService(Components.interfaces.nsILivemarkService).reloadAllLivemarks();   
  alert("succeeded");
 } 
 catch(ex){
  Components.classes["@mozilla.org/browser/livemark-service;2"].getService(Components.interfaces.nsILivemarkService).reloadAllLivemarks();
  alert("succeeded")
 }
} 
catch (ex) { alert (ex.name + ": " + ex.message)};

[ Voor 27% gewijzigd door Verwijderd op 11-12-2008 14:23 ]


  • mcDavid
  • Registratie: April 2008
  • Laatst online: 22-09 20:16
Waarom sla je het niet gewoon als bestandje op en maak je een bookmark naar dat bestandje?

  • Sebazzz
  • Registratie: September 2006
  • Laatst online: 23-09 18:21

Sebazzz

3dp

Dat is ook logisch dat Firefox dat doet. Greasemonkey en scripts in het "javascript:" protocol draait volgende "website rechten". Dat zou grappig zijn als een website aan je Chrome kon komen :o

Kijk je uit dat je met je huidige instelling niet je Firefox of je computer in gevaar brengt?

[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]


Verwijderd

Topicstarter
Als ik nu op mijn bookmark klik, moet ik alsnog eerst op 'toestemming geven' klikken voordat er iets gebeurd. Dus het lijkt mijn veiligheid niet in de weg te staan.

Wat wel vervelend is, is dat Firefox 3-4 seconden vast staat als ik de bookmarks laat updaten. Er is zeker geen manier om javascript op de achtergrond uit te voeren?

  • Sebazzz
  • Registratie: September 2006
  • Laatst online: 23-09 18:21

Sebazzz

3dp

Ja, door zelf een extension maken.

[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Wat is het probleem nu precies, want met al je edits in je topicstart weet ik even niet meer wat het huidige probleem wel / niet is :)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Verwijderd

Topicstarter
Het probleem is eigenlijk opgelost.

Het enige wat ik me nog afvroeg is of ik het updaten van mijn rss feeds in de achtergrond zou kunnen doen, aangezien de ui van Firefox nu 3-4 seconden niet reageert.
Pagina: 1