Javascript扩展NPObject(Google Earth插件API)

Javascript Extend NPObject (Google Earth Plugin API)

本文关键字:插件 API Earth Google 扩展 NPObject Javascript      更新时间:2023-09-26

我正在尝试在Google Earth API中扩展KmlPlacemark。谷歌使用工厂方法来创建对象,所以我不能做这样的事情:

    KmlPlacemark.prototype.foo = function () { /* ... */ }

在创建后,我试着简单地向每个对象添加方法

    function foo () { /* ... */ }
    placemarkObj.foo = foo;

但它抛出

Error: Trying to add unsupported property on NPObject!

我最终只是为它做了一个包装,但我仍然想知道是否有其他方法。

我不完全确定,但看起来你正在尝试扩展浏览器插件中存在的对象,这是不可能的——尽管这些对象可以在JavaScript中访问,但它们的实现是在NPAPI插件中的本地代码中实现的。