8

您好,我正在开发一个 HTML 5 游戏,在 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 来做到这一点?是否可以?

4

2 回答 2

3

MozillaZine 论坛中的讨论建议按如下方式创建书签(说明和代码从那里复制):

  1. 在 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>
    
  2. 然后制作一个小书签来切换代理首选项的状态,并将其作为位置:

    javascript: void(window.open('resource:///res/proxy.htm'));
    

见: http://forums.mozillazine.org/viewtopic.php?f=7& t=87755

于 2012-12-17T13:29:07.640 回答
1

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

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

于 2012-12-17T14:32:44.310 回答