当我尝试创建Firefox扩展时,我正在密切关注教程here . 我的扩展名有以下树:
backtosearch
+-chrome
+-content
backtosearch.xul
+-chrome.manifest
+-install.rdf
我为FF创建了一个名为“扩展测试”的测试配置文件,并在配置文件扩展文件夹“backtosearch@my.name”中添加了一个文件,其中包含扩展文件夹的绝对路径 . 我使用扩展开发扩展重新加载了浏览器chrome并重新启动了浏览器 - 但我看不到新的按钮 .
我简化了教程(因为我只需要一个按钮),而我的.xul只包含它 . 我的chrome.manifest文件包含:
content backtosearch chrome/content/
overlay chrome://browser/content/browser.xul chrome://backtosearch/content/backtosearch.xul
扩展名未显示在视图下 - >工具栏或工具 - >插件
谢谢你的帮助
install.rdf
<?xml version="1.0"?>
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:em="http://www.mozilla.org/2004/em-rdf#">
<Description about="urn:mozilla:install-manifest">
<!-- Required Items -->
<em:id>backtosearch@dylan.lloyd</em:id>
<em:name>Back To Search</em:name>
<em:version>1.0</em:version>
<em:targetApplication>
<Description>
<em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
<em:minVersion>1.5</em:minVersion>
<em:maxVersion>3.5.*</em:maxVersion>
</Description>
</em:targetApplication>
<!-- Optional Items -->
<em:creator>Dylan Lloyd</em:creator>
<em:description>Adds options to return to your last search immediately.</em:description>
<em:homepageURL>http://www.getyourkeywords.com/</em:homepageURL>
</Description>
</RDF>
backtosearch@dylan.lloyd
C:\Users\Dylan\Desktop\backtosearch\
3 回答
嘿,我在moziila自己的文档中发现了这个问候世界的错误 .
你可以继续阅读:https://github.com/oschrenk/firefox-extension
只需更新install.rdf =)
根据您的描述,目前尚不清楚问题是什么 . 最可能的原因,正如sdwilsh所指出的那样,扩展没有注册 . 如果是这种情况,扩展名将不会出现在工具 - >插件中 .
您可以尝试将extensions.logging.enable pref设置为true以帮助调试 . 也许先尝试安装helloworld extension?
可能的原因:
您没有为"link"文件使用正确的名称(必须与扩展ID匹配) .
"link"文件内容无效(路径格式为OS-native) . 在您的情况下,路径应以"backtosearch"结尾
install.rdf不正确 . 您可以通过在Firefox中打开它来检查它至少是有效的XML(可能首先重命名为.xml) - 如果黄色屏幕打开,则其无效 .
安装在错误的配置文件中或者没有真正重启Firefox .
如果扩展名已注册,请尝试在Firefox中打开
chrome://backtosearch/content/backtosearch.xul
(通过将其复制到位置栏) - 如果出现任何错误,则应修复它们 . 如果文件成功加载(可能为空),则会有's a problem with your overlay'的内容,如果没有看到它就很难调试 . 也许从已知有效的叠加开始?尝试通过Mozilla's Add-On Validation page运行它 . 它可能只是告诉你错误是什么 . 如果是javascript错误,它会告诉你肯定的 .
现在,我有同样的问题 - 当我加载我的插件时,我的工具栏没有出现,即使插件显示在“工具>插件”中,当我点击“选项”按钮时,一切都冻结了 .
原来,有几个错误 .
我的install.rdf中的optionsurl有"cchrome"而不是"chrome" .
在我的主.js文件中,我在一行的末尾忘记了";"并进行了var赋值 .
在我的xul文件中,我没有在两个属性赋值之间留出空格:
label="string"tooltip="string"
.我挂了一个
</toolbarbutton>
,我将一行复制到下一行 . 这就是 really 引起的问题 . 在代码文件中,行很长,我从未见过那部分!虽然它在Mozilla验证器中通过了很好,但这种组合完全失败了 . 在我看来,验证者应该 grab 了cchrome的事情 . 它会 grab javascript错误 .
无论如何,我告诉你,如果这可能是你的问题 .