網頁插件實現原理
IE瀏覽器基於Activex插件來實現,非IE瀏覽器采用NPAPI來實現,所以,非瀏覽器需要支持NPAPI來實現。
IE瀏覽器
FF瀏覽器(版本小於52)
原因從 Firefox 版本 52 開始,停止支持除 Adobe Flash 之外的所有 NPAPI 插件
安裝好后,在設置中選中不自動更新
Chorme瀏覽器(版本小於46)
下面說一下,chrome瀏覽器支持VLC的過程(其他NPAPI插件類似):
一、查看瀏覽器版本
瀏覽器“幫助和簡介”->“關於”中查看。
二、根據不同版本按下面步驟操作
41以前版本的Chrome:
直接在地址欄chrome://plugins/找到相應的插件,勾上“總是允許”重啟瀏覽器即可。
42-45版本的Chrome:
地址欄輸入:chrome://flags/,如下圖,點擊“啟用”NPAPI插件。
然后在地址欄輸入:chrome://plugins/找到相應的插件,勾上“總是允許”重啟瀏覽器即可。
當然重啟之后他任然會彈出一個幸災樂禍的溫馨提示:“此插件很快就不支持了”。但並不影響使用。
46-以后版本的Chrome:
換瀏覽器版本吧,在2015年9月之后,他們只支持PPAPI。
首先卸載Chrome,打開控制面板->卸載,
然后選中“同時刪除您的瀏覽數據”(低版本的Chrome不能讀取高版本的數據格式,所以一定要選中),點擊 卸載,再安裝低版本的Chrome即可。
注意事項:
單純從播放角度來講,chrome是可以播放vlc web-plugin的視頻的,但是呢,這個vlc在安裝的時候已經說明支持兩個插件,一個是ActiveX(for IE),另外一個是火狐的,並沒有提到chrome,說明這個對chrome的支持並不徹底,所以,建議在IE和火狐上用這個vlc-web plugin。下面就是總結的對三大瀏覽器的支持情況:
功能 |
IE |
FF |
Chrome |
版本要求 |
無 |
小於52 |
小於46 |
截屏 |
支持,不支持自定義截屏路徑,截屏默認放到桌面上 |
不支持 |
不支持 |
播放 |
開始播放出現2秒左右灰屏 |
開始播放出現2秒左右灰屏 |
開始播放出現2秒左右灰屏 |
動態播放或者切換視頻 |
支持動態指定MRL,然后播放 |
支持動態指定MRL,然后播放 |
不支持動態指定MRL,然后播放,可以重新加載控件來實現 |
暫停 |
支持 |
支持 |
不支持 |
停止 |
支持 |
支持 |
不支持 |
是否支持VLC plugin內部方法 |
支持 |
支持 |
不支持 |
chrome之所以出現這樣的情況,原因在於其不支持插件里的方法,調用方法時會出現
Uncaught TypeError: Cannot read property 'stop' of undefined
的錯誤