我的chrome和opera分别是版本33和17。在提出这个问题之前,我仔细阅读了firebreath插件的生命周期。
在我的plugin.cpp onWinodowAttached事件中,我只是在附加事件发生后调用一个方法来获取插件句柄。 是以下JS代码,在JS中捕获onWindowAttached事件的理想方法吗?
这是我的JS代码:
<html>
<head>
<script type="text/javascript">
function plugin0()
{
return document.getElementById('plugin0');
}
plugin = plugin0;
function addEvent(obj, name, func)
{
if (obj.attachEvent) {
obj.attachEvent("on"+name, func);
} else {
obj.addEventListener(name, func, false);
}
}
function pluginLoaded() {
alert("Plugin loaded!");
//alert(plugin().GetPluginHandle);
}
function RegisterWindowAttached()
{
var domplugin=document.getElementById('plugin0');
addEvent(domplugin, 'OnWindowAttached', function (pluginObj) {
PluginOnWindowAttached(pluginObj);
});
}
function PluginOnWindowAttached(pluginObj)
{
alert("attached");
alert(plugin().GetPluginHandle+"after attachement");
}
</script>
</head>
<body onload="RegisterWindowAttached()">
<object id="plugin0" type="application/x-mydemoplugin" width="400px" height="400px">
<param name="onload" value="pluginLoaded" />
</object><br />
</body>
</html>
P.S:1.GetPluginHandle返回具有长值的AttachedWindow内部并且是属性。 2&#39; OnWindowAttached&#39;由FB_JSAPI_EVENT注册并在IE和firefox中正常工作。但是警告声明的执行顺序不同。为什么这样?