我的firefox插件是使用firebreath框架编写的。它完全可以运行到Firefox的第28版。对于更高版本,我无法通过firefox插件从我的javascript页面调用firebreath dll的功能。它在样本html文件中工作得很好。我还附上了我的源代码供您参考。
调用firebreath dll函数:
var plugin = document.getElementById('dllID');
if(plugin.valid)
{
var ngInfo = plugin.ReturnUsers(param1, param2);
if(ngInfo.length >0)
{
// do something
}
}
Overlay.xul:
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/"?>
<overlay id="guardOverlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml">
<script type="application/x-javascript" src="chrome://guard/content/ngContent.js"/>
<vbox style="height:0;">
<html:embed type="application/x-guard" id="guard" style="height:0;"/>
</vbox>
</overlay>
在捕获异常时显示, TypeError:plugin.ReturnUsers不是函数
有谁知道我的问题的解决方案??
答案 0 :(得分:0)
最有可能的问题是你最终运行的是64位版本的firefox; 64位版本的firefox只运行64位版本的插件。尝试安装32位版本的firefox 28或将插件重建为64位。