2013-09-24 63 views
0

我正在使用一個NPAPI插件來封裝用於Chrome/Firefox的ActiveX控件。我都沒有寫過。這是一個嵌入式ActiveX媒體播放器,它與一個跨瀏覽器插件捆綁在一起,它通過瀏覽器播放我需要的某些文件類型,即普通播放器或標籤不會播放(否則我會用別的!)無法將int從JS傳遞到Chrome NPAPI插件

我可以創建播放器,並從任何瀏覽器控制它的幾乎所有方面,除非當Chrome瀏覽器從JS調用Seek(position)命令時,播放器似乎沒有收到該值。舉例來說,如果從JS我送...

GotoTime(30, 'myPlayer'); 

function GotoTime(position, player) 
{ 
    console.log("TYPE: " + typeof position); 
    o = document.getElementById(player); 
    console.log("Seeking to:" + position); 
    o.Seek(position); 
} 

在Firefox和IE瀏覽器,它會提示媒體到正確的位置(在這種情況下,30秒),但在Chrome似乎值始終爲零翻譯並從頭開始播放剪輯。從函數中可以看到,我確認(在控制檯日誌中)我實際上傳遞了一個「數字」而不是「字符串」,但我想也許NPAPI插件正在解釋它可能是一個float而不是int,反之亦然。

我99%確定這是插件問題,無法控制,我聯繫了供應商,但他們沒有太多幫助。有什麼想法可以嘗試嗎?

順便說一句,有問題的插件是here

非常感謝

+0

相關(谷歌正在從Chrome中刪除NPAPI支持):http://thenextweb.com/google/2013/09/23/google-chrome-drops-netscape-plugin-api-support-to-improve-stability- will -block-most-plugins-in-january-2014/ –

+0

嗯,謝謝你,我沒有意識到。我想最終,這是否是有效的無關緊要!在此期間,我仍然希望能夠找到它,直到找到更有前途的解決方案。 – dandanknight

回答

0

也許NPAPI插件可能將其解釋爲一個浮動的,而不是一個int或反之亦然

在NPAPI中,您可以將數字傳遞給插件,如int32_t or double - 完全未指定您獲得的類型。

將參數解釋爲0是在需要時不轉換數字類型的典型症狀,所以這在所有可能性上都是包裝插件的問題。
他們應該轉換爲所需的號碼類型depending on the variants type