最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

判斷客戶端瀏覽器是否安裝了Flash插件的多種方法

 更新時(shí)間:2010年08月11日 22:13:12   作者:  
各種方法判斷客戶端瀏覽器是否安裝了Flash插件,對于必須要支持flash才能瀏覽的頁面來說,提前做下說明,用戶體驗(yàn)會(huì)更好。
常用的方法:
復(fù)制代碼 代碼如下:

<SCRIPT LANGUAGE="JavaScript">
<!--
var swf = new ActiveXObject('ShockwaveFlash.ShockwaveFlash');
(swf) ? document.writeln('你已經(jīng)安裝了插件') : document.writeln('你沒有安裝插件');
// -->
</SCRIPT>
[code]
動(dòng)態(tài)加載.
[code]
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="mFlash"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"
WIDTH="120" HEIGHT="60" id="468x60" ALIGN="" VIEWASTEXT>
<PARAM NAME=quality VALUE=high>
</OBJECT>
<input type=button onclick="addFlash()" value="Add">
<input type=button onclick="mFlash.Stop()" value="Stop">
<input type=button onclick="mFlash.Play()" value="Play">
<script>
function addFlash() {
mFlash.movie="http://m.fzitv.net/images/ad/WIBU.swf";
mFlash.Play();
}
</script>

有很多檢測PLUGIN的方法,因?yàn)椴荒苤挥靡粋€(gè)方法就解決了這個(gè)問題,所以才有了這么多的方法
一、內(nèi)置的檢測
NN和MAC上的IE不能使用以下的檢測,只有WIN上的IE可以
1、即需即裝
在IE的工具-Internet選項(xiàng)-高級-瀏覽里面的即需即裝選項(xiàng)如果生效了,當(dāng)瀏覽器需要,就會(huì)從MS的網(wǎng)站下載Flash Player ActiveX control
如果沒生效,你沒安裝PLUGIN又直接進(jìn)入了網(wǎng)頁,就會(huì)看到一個(gè)裂開的方塊那樣的小ICON,點(diǎn)一下也可以帶你去安裝
2、HTML里面的OBJECT標(biāo)簽里面的classid 和 codebase屬性
classid是ActiveX control的標(biāo)識(shí),例如FLASH PLAYER的就是:
clsid:D27CDB6E-AE6D-11cf-96B8-444553540000
codebase則是下載插件的地址,例如FLASH4的(如果瀏覽器檢查到version后面的數(shù)字低于你已有版本,就不會(huì)安裝):
http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=4,0,2,0
這些HTML標(biāo)簽當(dāng)你在FLASH中PUBLIC或者DW中插入時(shí)都會(huì)自動(dòng)加入
瀏覽器執(zhí)行到這些標(biāo)簽就會(huì)進(jìn)行檢測了
二、用SCRIPT來檢測
這種方法是為了擺脫上一種辦法的局限,例如DW里面那個(gè)叫"Check Plug-in"的behavior
這種方法在有些不能執(zhí)行SCRIPT的機(jī)器上還是用不了,例如MAC上IE4.5之前版本,WIN31上面的IE。
還有某些用戶是關(guān)閉SCRPIT執(zhí)行的。
三、用FLASH來檢測
如果用戶連SCRPIT都不執(zhí)行的話,就只能用這招了。這也是MM自己用的方法。
做一個(gè)檢測的HTML,里面放一個(gè)SWF,里面只有一句GetURL("你真正的頁面")
同時(shí)在HTML的<HEAD>里面放<META HTTP-EQUIV="Refresh" CONTENT="10; URL="沒有安裝FLASH的頁面">
如果在10秒之內(nèi)SWF沒有把你帶到真正的頁面,檢測的HTML就會(huì)把你帶到?jīng)]安裝的頁面
四、最后一個(gè)辦法,讓用戶自己選擇
這也是最常見的了,很多網(wǎng)站都做一個(gè)入口的頁面,下面就有安裝PLUGIN的小ICON
復(fù)制代碼 代碼如下:

<!-- start VBSCRIPT plugin detection-->
<SCRIPT LANGUAGE=VBScript>
Private i, x, MM_FlashControlVersion
On Error Resume Next
x = null
MM_FlashControlVersion = 0
var Flashmode
FlashMode = False
For i = 5 To 1 Step -1
Set x = CreateObject("ShockwaveFlash.ShockwaveFlash." & i)
MM_FlashControlInstalled = IsObject(x)
If MM_FlashControlInstalled Then
MM_FlashControlVersion = CStr(i)
Exit For
End If
Next
FlashMode = (MM_FlashControlVersion >= 5)
If FlashMode = True Then
document.write "有FLASH的HTML"
Else
document.write "無FLASH的HTML"
End If
</SCRIPT><!-- end VBSCRIPT PLUGIN DETECTION -->

<script type="text/javascript" language="JavaScript">
<!-- start JS detection
FlashMode = 0;
if (navigator.plugins && navigator.plugins.length > 0)
{
if (navigator.plugins["Shockwave Flash"])
{
var plugin_version = 0;
var words = navigator.plugins["Shockwave Flash"].description.split(" ");
for (var i = 0; i < words.length; ++i)
{
if (isNaN(parseInt(words[i])))
continue;
plugin_version = words[i];
}
if (plugin_version >= 5)
{
var plugin = navigator.plugins["Shockwave Flash"];
var numTypes = plugin.length;
for (j = 0; j < numTypes; j++)
{
mimetype = plugin[j];
if (mimetype)
{
if (mimetype.enabledPlugin && (mimetype.suffixes.indexOf("swf") != -1))
FlashMode = 1;
// Mac wierdness
if (navigator.mimeTypes["application/x-shockwave-flash"] == null)
FlashMode = 0;
}
}
}
}
}
if (FlashMode == 1)
{
document.write('有FLASH的HTML');}
else {
document.write('無FLASH的HTML'); }
// end JS detection -->

通過以下的Javascript腳本,可以檢測當(dāng)前瀏覽器是否安裝Flash插件以及插件的版本是否滿足要求。
復(fù)制代碼 代碼如下:

<SCRIPT LANGUAGE="JavaScript1.1">
<!--
// U can change this number to check specific version of flash
var MM_contentVersion = 6;
var plugin = (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"]) ?
navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin : 0;
if ( plugin ) {
var words = navigator.plugins["Shockwave Flash"].description.split(" ");
for (var i = 0; i < words.length; ++i){
if (isNaN(parseInt(words[i])))
continue;
var MM_PluginVersion = words[i];
}
var MM_FlashCanPlay = MM_PluginVersion >= MM_contentVersion;
}
else if( navigator.userAgent && navigator.userAgent.indexOf("MSIE")>=0 &&
(navigator.appVersion.indexOf("Win") != -1) ) {
//FS hide this from IE4.5 Mac by splitting the tag
document.write('<SCR' + 'IPT LANGUAGE=VBScript\> \n');
document.write('on error resume next \n');
document.write('MM_FlashCanPlay = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & MM_contentVersion)))\n');
document.write('</SCR' + 'IPT\> \n');
}
if ( MM_FlashCanPlay ) {
alert("Flash Detection OK. U can play.");
}
else{
alert("Flash Detection Failed. Need Download specific version.");
}
//-->
</SCRIPT>

<script>
//自己總結(jié)的
//IE中判斷是否安裝插件
var swf;
function IE_Flash()
{
try
{
var swf=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
alert("已安裝插件");
}
catch(e)
{
alert("沒有安裝插件");
}
}
//FireFox,Chrome中判斷是否安裝插件
function FF_or_Chrome_Flash()
{
var swf=navigator.plugins["Shockwave Flash"];
(swf)?alert("已安裝插件"):alert("沒有安裝插件");
}
</script>

相關(guān)文章

  • JavaScript中的scrollTop詳解(滾動(dòng)到頂部)

    JavaScript中的scrollTop詳解(滾動(dòng)到頂部)

    scrollTop是JavaScript中一個(gè)非常有用且重要的方法,它用于獲取或設(shè)置元素的垂直滾動(dòng)條位置,這篇文章主要給大家介紹了關(guān)于JavaScript中scrollTop詳解(滾動(dòng)到頂部)的相關(guān)資料,需要的朋友可以參考下
    2023-12-12
  • bootstrap響應(yīng)式導(dǎo)航條模板使用詳解(含下拉菜單,彈出框)

    bootstrap響應(yīng)式導(dǎo)航條模板使用詳解(含下拉菜單,彈出框)

    這篇文章主要為大家詳細(xì)介紹了bootstrap響應(yīng)式導(dǎo)航條模板使用詳解,含下拉菜單,彈出框效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 一步一步封裝自己的HtmlHelper組件BootstrapHelper(三)

    一步一步封裝自己的HtmlHelper組件BootstrapHelper(三)

    一步一步封裝自己的HtmlHelper組件:BootstrapHelper,系列文章第三篇,感興趣的小伙伴們可以參考一下
    2016-09-09
  • javaScript 刪除確認(rèn)實(shí)現(xiàn)方法小結(jié)

    javaScript 刪除確認(rèn)實(shí)現(xiàn)方法小結(jié)

    因?yàn)閷τ趦?nèi)容的刪除是件很重要的事,所以一般的系統(tǒng)中,都需要?jiǎng)h除確認(rèn)一下,以免誤刪,具體的方法如下,大家可以參考下。
    2009-12-12
  • 用js讀、寫、刪除Cookie代碼續(xù)篇

    用js讀、寫、刪除Cookie代碼續(xù)篇

    本文是上一篇文章《用js讀、寫、刪除Cookie代碼分享及詳細(xì)注釋說明》發(fā)現(xiàn)了些問題,進(jìn)行分析解決,推薦給大家
    2014-12-12
  • 使用JavaScript為Kindeditor自定義按鈕增加Audio標(biāo)簽

    使用JavaScript為Kindeditor自定義按鈕增加Audio標(biāo)簽

    這篇文章主要介紹了使用JavaScript為Kindeditor自定義按鈕增加Audio標(biāo)簽的方法,KindEditor是一套開源的HTML可視化編輯器,需要的朋友可以參考下
    2016-03-03
  • 通過JavaScript實(shí)現(xiàn)圖片壓縮

    通過JavaScript實(shí)現(xiàn)圖片壓縮

    在學(xué)習(xí)的時(shí)候,有時(shí)候看到一些一些網(wǎng)站的圖片是經(jīng)過壓縮處理的,因?yàn)閴嚎s之后的圖片會(huì)節(jié)省一部分你的內(nèi)存空間,這樣的話也可以提升性能,于是就比較好奇這是如何實(shí)現(xiàn)的,今天我們就簡單的實(shí)現(xiàn)一下,需要的朋友可以參考下
    2023-06-06
  • javascript實(shí)現(xiàn)彈幕墻效果

    javascript實(shí)現(xiàn)彈幕墻效果

    這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)彈幕墻效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • js不完美解決click和dblclick事件沖突問題

    js不完美解決click和dblclick事件沖突問題

    當(dāng)某個(gè)元素,如:div,同時(shí)綁定了click事件和dblclick事件,而這兩個(gè)事件又要處理相對獨(dú)立的業(yè)務(wù),也就是click的時(shí)候不能觸發(fā)dblclick,dblclick的時(shí)候不能觸發(fā)click
    2012-07-07
  • 微信小程序收貨地址API兼容低版本解決方法

    微信小程序收貨地址API兼容低版本解決方法

    這篇文章主要介紹了微信小程序收貨地址API兼容低版本解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05

最新評論

丹巴县| 嘉鱼县| 阳原县| 江西省| 云南省| 湟源县| 庄浪县| 颍上县| 龙山县| 武隆县| 东阿县| 界首市| 兴和县| 贵港市| 牙克石市| 江源县| 博白县| 剑川县| 镶黄旗| 尤溪县| 衢州市| 鸡西市| 勐海县| 卢龙县| 迁安市| 梁平县| 图木舒克市| 大竹县| 高密市| 石狮市| 贞丰县| 闵行区| 新泰市| 吴堡县| 平塘县| 台南市| 离岛区| 潼关县| 达日县| 军事| 安陆市|