2012-08-28 24 views
0

從我的角度來看,它應該是javascript方面的一些代碼,在NPAPI插件中設置回調函數。在NPAPI方面,應該有一些方法來調用這個回調函數,從而將通知從NPAPI發送到JavaScript。如何將通知從NPAPI插件發送到JavaScript代碼?

我想爲Chrome瀏覽器做它,但它應該適用於任何支持NPAPI的瀏覽器。短NPAPI和JavaScript代碼示例將非常有幫助。

回答

1

我沒有適合您的工作代碼示例,但實現起來並不困難。 FireBreath的做法基本上是自己實現addEventListener和removeEventListener;回調函數將作爲一個NPObject(在NPVariant中),您可以通過使用所需參數調用NPObject上的NPN_InvokeDefault來觸發該回調。

這實際上不會像真正的javascript事件那樣行事,但它對於大多數目的來說足夠接近。

你當然也可以有任何方法接受一個NPObject作爲參數之一,並用它來做回調。

您可以在FireBreath代碼庫中找到示例代碼,但爲簡單起見,它被抽象了一下並變爲DRY。

相關問題