阅读:9169回复:28
有没有js代码快速切换一个about:config值?
经常下载大量小文件到某个目录,有时图省去点击确定的麻烦,就把选项中的“总是询问文件存放位置”改成了“下载到该目录:_______”。但是不再下载到这个目录时,又希望下载对话框出现。已经查明是下面键值控制
browser.download.useDownloadDir false=有对话框,true=直接到目录 有没有什么js代码可以配合鼠标手势快速切换这个设定的?谢谢 Tagged_by_kmc : firefox toggle/set about:config preferences entry entries error console javascript command |
|
|
1楼#
发布于:2010-07-19 19:50
这个帖子要mark一下
|
|
2楼#
发布于:2010-07-19 19:50
mark之
|
|
3楼#
发布于:2010-07-19 19:50
刚刚搜了一下,好像不能用bookmarklet来实现。标记一下,以后备用。
|
|
4楼#
发布于:2010-07-19 19:50
... 臭屁帖 ![]() |
|
|
5楼#
发布于:2010-07-19 19:50
我最近也被这个设定字符串值弄得很头痛:这个字符串为什么不能用中文呢?比如我想用一个鼠标手势来快速换字体的代码
var PS = Components.classes['@mozilla.org/preferences-service;1'] .getService(Components.interfaces.nsIPrefBranch); var answer=prompt("请输入你需要切换到的默认字体(1=XHei,2=极限盟途黑,3=PMingLiu-Tw)","1"); switch(answer) { case "1": PS.setCharPref("font.name-list.sans-serif.zh-CN", "XHei, 极限盟途黑, PMingLiU-TW, SimSun, MS Song"); break; case "2": PS.setCharPref("font.name-list.sans-serif.zh-CN", "极限盟途黑, XHei, PMingLiU-TW, SimSun, MS Song"); break; case "3": PS.setCharPref("font.name-list.sans-serif.zh-CN", "PMingLiU-TW, XMento, 极限盟途黑, SimSun, MS Song"); break; default: alert("错误选项!") } 绑定给Mouse Gestures Redox后,执行手势(或者直接输入到Error Console里面执行),弹出prompt(),不管选哪一个,相应的键值都会被清空,但是如果把「极限盟途黑」改成英文名XMento,就可以正常执行。我试了各种escape字符如: \u6781\u9650\u76DF\u9014\u9ED1 %E6%9E%81%E9%99%90%E7%9B%9F%E9%80%94%E9%BB%91 unescape("\u6781\u9650\u76DF\u9014\u9ED1, XHei, PMingLiU-TW, SimSun, MS Song")) 全都不行。 但奇怪的是prompt()和alert()里面的中文提示都能正常显示。 求指教! 哦,在这里查到了: Note: The value for the second parameter of nsIPrefBranch.setCharPref() is a UTF-8 bytestring; here, we are converting a UTF-16 to UTF-8 using unescape() and encodeURIComponent(). 原来要这样写 PS.setCharPref("font.name-list.sans-serif.zh-CN", unescape(encodeURIComponent("极限盟途黑, XHei, PMingLiU-TW, SimSun, MS Song"))); |
|
|
6楼#
发布于:2010-07-19 19:50
多谢,解决。 ![]() 嗯还需要把双引号改一下。。。 |
|
|
7楼#
发布于:2010-07-19 19:50
liuxb:不好意思,顶一下老帖 可能是把最后一行改成 PS.setCharPref("extensions.adblockplus.customProxy", "[{"name":"SSH","host":"127.0.0.1","port":"8118","type":"http","remoteDNS":"0"}]"); |
|
|
8楼#
发布于:2010-07-19 19:50
原来是这样写的
好帖子啊 马克了 |
|
9楼#
发布于:2010-07-19 19:50
不好意思,顶一下老帖
请问2楼的代码,如果是字符串类型的,该怎么写? 比如extensions.adblockplus.customProxy;[{"name":"SSH","host":"127.0.0.1","port":"1080","type":"socks4","remoteDNS":"0"}] 要改成[{"name":"SSH","host":"127.0.0.1","port":"8118","type":"http","remoteDNS":"0"}] 哪位高手路过给回复一下吧,谢谢。 |
|
|
10楼#
发布于:2010-07-19 19:50
这个extensions.mintrayr.minimizeon 我about:config里没有
|
|
11楼#
发布于:2010-07-19 19:50
谢谢楼上指点,俺代码盲,之前不知道可以调用这个api
https://www.firefox.net.cn/forum/viewtop ... 704#265704 对应的新代码: var pref = "extensions.mintrayr.minimizeon"; gPrefService.setIntPref(pref, gPrefService.getIntPref(pref) == 2 ? 0 : 2); if (gPrefService.getIntPref(pref) == 2){ FireGestures.setStatusText('MinTrayR_关闭fx到系统托盘'); }else{ FireGestures.setStatusText('MinTrayR_fx可直接关闭'); } |
|
12楼#
发布于:2010-07-19 19:50
如果是Firegesture的话,把信息显示在状态栏上更好:
FireGestures.setStatusText(aText) Displays aText in the status bar. 毕竟alert很恼人 |
|
13楼#
发布于:2010-07-19 19:50
|
|
14楼#
发布于:2010-07-19 19:50
谢谢ls的
|
|
|
上一页
下一页