天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

再談IE中Flash控件的自動激活 ObjectWrap

我在Ajax中國上曾經對比過國內門戶網站對Flash激活限制的處理。除了qq.com,各大門戶網站上的flash都已經解決了激活限制的問題。淘寶的頁面上也常常會使用到Flash,激活限制導致用戶的交互性體驗感受不夠友善。

我們一直想解決此問題。但是國內門戶網站的做法都略為麻煩,要么需要為每個flash編寫額外的js,要么就是在頁面上放置flash的位置打上一塊<script>補丁,利用SWFObject或者UFO提供的腳本寫入flash。

網易的做法算是最技術的了,它的原理可以簡單說一下(感謝在網易工作的朋友的闡析):通過外部引入的js代碼覆蓋主頁面的document.write方法,這樣在主頁面上利用document.write方法時其實是外部文件的函數來寫入的,實現了active控件下載和主頁面分離。這樣也就避開了激活限制。

可是,以上的所有解決方法,Flash都是通過腳本來寫入的。比較注重web標準的網站會附上一段<noscript >來彌補禁用JavaScript的用戶。但大多數是置之不理。

一番google(我真的是用了yahoo,不過沒找到什么),在SitePoint上發現了一份很有價值的文獻ObjectSwap: Bypassing the ActiveX Activation Issue in IE,如獲至寶。

ObjectSwap提供的實現只需要在<head>中引入一個腳本。雖然也是使用腳本,但其邏輯是在頁面加載完成后,重寫一次<object>標簽來實現自動激活。頁面中的flash依然是標準的HTML。不需要通過document.write寫入。而且對于禁用js的用戶Flash依然可以正常顯示。這應該算是最unobtrusive的一種實現了。

最新的ObjectWrap 可以從這里下載。

原來的腳本有6k,我簡化了一些邏輯,并通過條件注釋讓腳本只為IE6/7服務。讓人欣喜的是,不光是Flash,只要是<object>,ObjectWrap都會處理,這樣我們在安全登錄淘寶或者支付寶輸入密碼的時候,也可以節約一個單擊的氣力了。

至于為什么重寫<object>可以解決激活限制,就不要深究了,正如IE那一系列讓人抓狂的CSS hack。我們只能逼自己記住它,傻瓜才會去弄清楚為什么。

最后向ObjectWrap的作者 Karina Steffens 致敬!

JavaScript技術再談IE中Flash控件的自動激活 ObjectWrap,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 人妻无码AV中文系列 | 黑人强伦姧人妻日韩那庞大的 | 国产a在线不卡 | 午夜AV亚洲一码二中文字幕青青 | 男生扒开美女尿口戳戳 | 干丝袜美女 | 亚洲精品91 | 久见久热 这里只有精品 | 欧美高清xxx| 国产精品夜夜春夜夜爽久久小 | 久久热在线视频精品店 | 3dbdsm变态videos高清 | 国产成人免费高清在线观看 | 么公一夜要了我一八次视频HD | 久久伊人天堂视频网 | 国产人妻午夜无码AV天堂 | 免费 高清 中文在线观看 | 亚洲伊人久久网 | jizz69女士第一次 | 97在线免费观看 | 黑丝美女娇喘 | 国产AV国产精品国产三级在线L | 第一会所欧美无码原创 | 色偷偷超碰97人人澡人人 | 亚洲不卡视频 | 桃花在线视频观看免费 | 久久亚洲精品中文字幕 | sao虎影院桃红视频在线观看 | 黄色三级视频在线观看 | 国产 亚洲 中文字幕 久久网 | 最近日本字幕免费高清 | 亚洲国产精品久久精品成人网站 | 九九精品国产亚洲A片无码 九九精彩视频在线观看视频 | 国产精品无码无卡毛片不卡视 | 青青青青青青青草 | 在线a亚洲视频 | 18女下面流水不遮网站免费 | 国产成人免费不卡在线观看 | 欧美男男网站免费观看videos | 九九视频在线观看视频6 | 久久国产免费观看精品1 |