我可以通过javascript在mozilla中更改:config吗?

我可以通过javascript在mozilla中更改:config吗?,javascript,html,firefox,animation,canvas,Javascript,Html,Firefox,Animation,Canvas,您好,我正在开发一个HTML5游戏,在Chrome中,动画看起来很棒,但在firefox中不是!我在互联网上搜索,找到了一个解决方案,需要在about:config中更改一些设置,它们是: webgl.force-enabled=true webgl.msaa-force=true layers.acceleration.force-enabled=true gfx.direct2d.force-enabled=true stagefright.force-enabled=true 我手动更改

您好,我正在开发一个HTML5游戏,在Chrome中,动画看起来很棒,但在firefox中不是!我在互联网上搜索,找到了一个解决方案,需要在about:config中更改一些设置,它们是:

webgl.force-enabled=true
webgl.msaa-force=true
layers.acceleration.force-enabled=true
gfx.direct2d.force-enabled=true
stagefright.force-enabled=true

我手动更改这些设置,动画在Firefox中看起来很棒。现在我的问题是如何使用javascript实现这一点?有可能吗?

MozillaZine论坛上的一次讨论建议创建一个bookmarklet,如下所示(从那里复制的说明和代码):

  • 在您的Firefox安装文件夹中的res目录下创建一个名为“proxy.htm”的文件,并将其放入其中:

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
                          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
    <head>
       <title>Proxy Toggle</title>
       <script type="text/javascript">
       // <![CDATA[
       function loaded() { 
          netscape.security.PrivilegeManager
          .enablePrivilege("UniversalBrowserAccess UniversalXPConnect");
          var prefs = Components.classes["@mozilla.org/preferences-service;1"]
                      .getService(Components.interfaces.nsIPrefBranch);
          if (prefs.getIntPref("network.proxy.type") == 0) {
             prefs.setIntPref("network.proxy.type", 1);
          }
          else {
             prefs.setIntPref("network.proxy.type", 0); 
          }
          self.close();
       }; 
       self.onload = loaded;   
       // ]]>
       </script>
    </head>
    <body>
       Please wait...
    </body>
    </html>
    
  • 请参阅:

    您不应更改这些设置-不要在您的计算机上,尤其是在其他人的计算机上。假设硬件和驱动程序能够处理这些设置,则这些设置仍将启用。强制启用的设置仅用于测试,打开它们可能会导致不稳定(Firefox崩溃、图形驱动程序崩溃)


    Firefox没有在您的情况下自动启用硬件加速的最可能原因是过时的驱动程序-您应该为图形卡安装当前的驱动程序,并建议其他人也这样做。

    希望不是!至少不是从一个任意的网站。不,如果他们可以随意更改浏览器设置,那对所有的网络罪犯来说不是很好吗!为什么要投反对票和结束票?这是一个合法的问题,写得很清楚,并且有一些关于这个问题的研究。这是一个建设性的问题。虽然您可能不希望浏览器实现所要求的行为,但这肯定是一个合法的问题。@tkone我的评论的意思是:如果有一种方法可以让网站全局修改
    关于:config
    ,这是一个巨大的安全威胁。谢谢你的回答,它实际上试图帮助OP解决他们的问题。@tkone不幸的是,在我编辑之前,这不是一个真正的答案。只有链接的答案经常从StackOverflow中删除,因为链接可能会断开,答案会变得无用。我们鼓励您编辑这些答案,以添加链接中相关部分的引用,或将其标记为非答案。@liquidboy如果您觉得满意,请不要忘记接受答案。请注意答案旁边的空复选标记。这是一个很好的技巧,但我仍然必须投反对票,因为在这个问题的上下文中,这是一个非常糟糕的建议(参见我的答案)。@WladimirPalant bad advice,然而回答了这个问题。问题不是“这是个好主意吗”,而是“我该怎么做”。说这是个坏建议是好的。投反对票(赞成你的答案)有点小气。回答这个问题很重要;甚至给出建议也很重要。但否决一个诚实地解决问题的合法答案似乎有点奇怪。
    javascript: void(window.open('resource:///res/proxy.htm'));