中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

HTML頁面嵌入視頻與JS控制切換視頻示例詳解
來源:易賢網(wǎng) 閱讀:1510 次 日期:2016-06-16 11:33:59
溫馨提示:易賢網(wǎng)小編為您整理了“HTML頁面嵌入視頻與JS控制切換視頻示例詳解”,方便廣大網(wǎng)友查閱!

首先,在頁面中嵌入視頻的HTML代碼為: 

代碼如下:

<div id="youku" class="youku"> 

<object id="obx" name="obx" width="290" height="260"> 

<param name="movie" value="http://www.tudou.com/v/6HJvxxkarzk/&resourceId=0_04_11_19/v.swf"></param> 

<param name="allowFullScreen" value="true"></param> 

<param name="allowscriptaccess" value="always"></param> 

<param name="wmode" value="opaque"></param> 

<embed src="http://www.tudou.com/v/6HJvxxkarzk/&resourceId=0_04_11_19/v.swf" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" wmode="opaque" width="290" height="260"></embed> 

</object> 

</div> 

其中,同時(shí)使用object和embed標(biāo)簽是為了兼容更多的瀏覽器,但請注意保持兩種標(biāo)簽下相同屬性值的一致。 

PS:<object>和<embed>標(biāo)簽及其屬性的介紹和使用方法請參考OBJECT和EMBED標(biāo)簽一文。 

然后,再說說如何用JS來動(dòng)態(tài)改變嵌入視頻的地址從而達(dá)到播放下一個(gè)視頻的目的。 

這時(shí)好多人立刻就能想到用標(biāo)簽名或者DOM方式來找到上述param結(jié)點(diǎn)的value屬性和embed結(jié)點(diǎn)的src屬性,用JS動(dòng)態(tài)賦值來改變地址。但是測試發(fā)現(xiàn)視頻地址雖然被替換了,頁面上顯示的視頻卻還是原來的沒有改變,百思不得其解。 

原來,嵌入的這個(gè)object對象的所有參數(shù)是在頁面加載的時(shí)候初始化的,只有使其重新加載才能實(shí)現(xiàn)切換到下一個(gè)視頻進(jìn)行播放,單純改變它的地址屬性值是不起作用的。就像公司的某個(gè)員工,他的地址變了(搬家了),他還是原來的那個(gè)員工而不是其他人。 

我經(jīng)常使用的使其重新加載的方法有兩種(以上述代碼為例): 

①用JS的obj.innerHTML方法將object對象整體進(jìn)行重置。 

代碼如下:

/*功能:動(dòng)態(tài)切換視頻*/ 

function setvideo(url){ 

var youku = document.getElementById("youku"); 

var htmlstr = "<object id='obx' name='obx' width='290' height='260'>"; 

htmlstr += "<param name='movie' value='"+url+"'></param>"; 

htmlstr += "<param name='allowFullScreen' value='true'></param>"; 

htmlstr += "<param name='allowscriptaccess' value='always'></param>"; 

htmlstr += "<param name='wmode' value='opaque'></param>"; 

htmlstr += "<embed src='"+url+"' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' wmode='opaque' width='290' height='260'></embed>"; 

htmlstr += "</object>"; 

youku.innerHTML = htmlstr; 

②在div容器內(nèi)放置一個(gè)iframe,這樣可以動(dòng)態(tài)刷新iframe內(nèi)的頁面而不影響當(dāng)前父頁面。 

具體的代碼就不寫了,大體的思路有: 

1.采用url傳值。 

2.父頁面或子頁面弄個(gè)隱藏域動(dòng)態(tài)存放地址供子頁面獲取。 

3.采用①方法重置子頁面中object對象。 

4.其他諸如window.open方法就繞遠(yuǎn)了,不推薦。 

至此,嵌入和控制視頻切換都成功實(shí)現(xiàn)了。但是無意間,我發(fā)現(xiàn)一個(gè)問題: 

切換到新的視頻之后,點(diǎn)刷新或按F5等任何方式的刷新頁面,都會(huì)彈出一個(gè)“缺少對象”的腳本錯(cuò)誤。找到錯(cuò)誤代碼,發(fā)現(xiàn)是Flash的內(nèi)部腳本錯(cuò)誤: 

function __flash__removeCallback(instance, name) { 

instance[name] = null; 

如果頁面里使用了flash,并且flash里使用了flash.external.ExternalInterface.addCallback 方法,刷新網(wǎng)頁時(shí)就會(huì)報(bào)__flash__removeCallback的js錯(cuò)誤:缺少對象(Line 53),(Jscript-scriptblock)。此函數(shù)的調(diào)用處為: 

__flash__removeCallback(document.getElementById(""), "dewprev"); 

很顯然,這里document.getElementById("")返回的是null,才會(huì)導(dǎo)致__flash__removeCallback報(bào)錯(cuò),個(gè)人認(rèn)為這個(gè)flash的內(nèi)置方法或許應(yīng)該這么寫: 

function __flash__removeCallback(instance, name) { 

if (instance != null) { instance[name] = null; } 

有人測試發(fā)現(xiàn),document.getElementById("")這里是獲取flash控件Object對象的id/name屬性的,之所以出現(xiàn)這個(gè)錯(cuò)誤,是因?yàn)闆]給Object設(shè)置id/name屬性,設(shè)置后就不會(huì)出錯(cuò)了??墒聦?shí)上我的object都是帶著id/name屬性的,因此不敢茍同此原因。由此看來,這個(gè)加id/name的方法可以解決部分人的問題,引起此問題的原因并非僅此一種。 

爾后,我苦苦找尋了好久,終于在一個(gè)外國網(wǎng)站上找到了解決的辦法,是一個(gè)叫Dave Smith的人寫的,我在他代碼的基礎(chǔ)上做了點(diǎn)改進(jìn),減少了頁面不斷執(zhí)行代碼的壓力。他提供的代碼如下: 

代碼如下:

<script type="text/javascript"> 

(function(){ 

  var setRemoveCallback = function(){ 

  __flash__removeCallback = function(instance, name){ 

      if (instance){ 

instance[name] =null; 

}; 

window.setTimeout(setRemoveCallback, 10); 

}; 

setRemoveCallback(); 

})(); 

</script> 

他的意思大體就是:重寫flash內(nèi)部的這個(gè)腳本可以解決當(dāng)前的問題,但是當(dāng)object對象加載后某個(gè)時(shí)間,flash內(nèi)部的這個(gè)腳本又會(huì)覆蓋你重寫的這個(gè)函數(shù)。因此不能保證播放器到時(shí)會(huì)調(diào)用你重寫的函數(shù)。為了達(dá)到這個(gè)目的,他將函數(shù)設(shè)為每10毫秒覆蓋一下flash內(nèi)部提供的這個(gè)函數(shù)。這樣問題就解決了。同時(shí)他將這段代碼加以簡化形成了以下兩個(gè)“版本”: 

簡化版本一:稍簡 

代碼如下:

<script type="text/javascript"> 

  var setRemoveCallback = function() { 

__flash__removeCallback = function(instance, name) { 

       if(instance) { 

instance[name] = null; 

}; 

window.setTimeout(setRemoveCallback, 10); 

}; 

setRemoveCallback(); 

</script> 

簡化版本二:超簡 

代碼如下:

<script type="text/javascript">(function(){var s=function(){__flash__removeCallback=function(i,n){if(i)i[n]=null;};window.setTimeout(s,10);};s();})();</script> 

我想了會(huì),理理思路: 

這錯(cuò)誤是在刷新頁面時(shí)產(chǎn)生的,頁面刷新的過程就是舊頁面的消亡和新頁面的重載。理論上重載新頁面不會(huì)有什么問題,那么錯(cuò)誤就是產(chǎn)生在舊頁面消亡前的“善后”工作中。我只要在頁面消亡前將flash內(nèi)部這個(gè)回調(diào)函數(shù)重寫,就能達(dá)到同樣的目的,代碼如下,測試通過。 

代碼如下:

/*解決視頻切換內(nèi)部腳本錯(cuò)誤*/ 

<script type="text/javascript"> 

function endcall(){var s=function(){__flash__removeCallback=function(i,n){if(i)i[n]=null;};window.setTimeout(s,10);};s();} 

window.onbeforeunload = endcall; 

</script> 

更多信息請查看網(wǎng)頁制作
易賢網(wǎng)手機(jī)網(wǎng)站地址:HTML頁面嵌入視頻與JS控制切換視頻示例詳解
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機(jī)站點(diǎn)

版權(quán)所有:易賢網(wǎng)

中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
五月婷婷综合在线| 天天色图综合网| 精品久久久三级丝袜| 日韩天堂在线观看| 91精品黄色片免费大全| 日韩亚洲欧美在线| 久久影院午夜片一区| 国产亚洲一二三区| 1000精品久久久久久久久| 中文字幕一区二区三区蜜月| 国产精品欧美一区二区三区| 亚洲丝袜精品丝袜在线| 亚洲无线码一区二区三区| 日韩国产欧美在线视频| 国产一区二区三区免费| 成人动漫视频在线| 欧美在线制服丝袜| 日韩视频在线你懂得| 国产欧美综合在线观看第十页 | 有码一区二区三区| 偷窥少妇高潮呻吟av久久免费| 三级影片在线观看欧美日韩一区二区 | 三级一区在线视频先锋| 精品一区二区三区在线观看国产| 国产成人精品一区二区三区四区 | 国产精品二三区| 亚洲一区在线视频观看| 精品亚洲免费视频| 91女人视频在线观看| 欧美一区二区在线看| 亚洲国产精品成人久久综合一区| 亚洲一区二区三区精品在线| 韩国理伦片一区二区三区在线播放| 成人av动漫在线| 欧美一级高清片在线观看| 中文字幕亚洲欧美在线不卡| 免费看欧美女人艹b| 91在线porny国产在线看| 91精选在线观看| 国产精品乱人伦| 蜜臀a∨国产成人精品| 色综合天天在线| 久久精品这里都是精品| 日本一区中文字幕| 色综合久久综合网97色综合| 久久久久久一二三区| 日日摸夜夜添夜夜添国产精品 | 欧美成人video| 亚洲精品免费在线播放| 国产精品一区二区三区网站| 欧美午夜一区二区| 亚洲欧洲一区二区三区| 国产福利一区在线| 精品久久五月天| 奇米影视一区二区三区| 欧美性一二三区| 中文字幕一区二区三区不卡在线| 国产美女久久久久| 精品久久一区二区| 久久激情五月婷婷| 日韩一级免费一区| 蜜桃av噜噜一区| 日韩午夜在线播放| 久久电影网站中文字幕 | 欧美激情一区二区三区蜜桃视频| 蜜臀av性久久久久av蜜臀妖精| 在线免费不卡视频| 亚洲另类春色国产| 在线一区二区三区四区五区| 亚洲天堂a在线| 91亚洲国产成人精品一区二区三| 国产午夜精品久久| 国产成人精品免费| 91香蕉国产在线观看软件| 337p亚洲精品色噜噜狠狠| 寂寞少妇一区二区三区| 奇米一区二区三区av| 国产亚洲自拍一区| 国产伦精品一区二区三区在线观看 | 免费观看在线色综合| 欧美一区二区三区系列电影| 日本免费在线视频不卡一不卡二 | 成人av小说网| 亚洲欧洲韩国日本视频| 一本大道综合伊人精品热热 | 欧美一区二区三区四区久久| 日韩av在线发布| 精品黑人一区二区三区久久 | 一区二区三区自拍| 色播五月激情综合网| 图片区小说区区亚洲影院| 日韩免费性生活视频播放| 国产一区二区伦理| 亚洲日本青草视频在线怡红院| 色综合天天综合色综合av| 午夜激情一区二区| www国产成人| 色综合久久综合| 日本欧美一区二区三区乱码 | 亚洲一区二区3| 欧美变态凌虐bdsm| 不卡的av电影在线观看| 午夜激情一区二区| 国产清纯在线一区二区www| 在线观看网站黄不卡| 麻豆成人久久精品二区三区红| 日本一区二区三区四区在线视频 | 欧美日本一区二区三区四区| 精品一区二区三区在线播放| 亚洲天堂精品在线观看| 日韩视频123| 色吧成人激情小说| 国产精品99久| 亚洲国产cao| 欧美激情艳妇裸体舞| 91精品国产综合久久久蜜臀粉嫩| 国产电影一区二区三区| 日韩av不卡一区二区| 中文字幕日韩一区二区| 精品国产乱码久久久久久1区2区 | 国产精品嫩草影院av蜜臀| 欧美高清www午色夜在线视频| 国产精品综合在线视频| 日韩精品一级二级 | 男女男精品视频| 亚洲欧美色图小说| 国产欧美1区2区3区| 欧美一区二区三区四区高清| 欧美一a一片一级一片| 成人午夜在线播放| 激情国产一区二区| 久久精品国产99国产| 香蕉成人伊视频在线观看| 一区二区三区在线不卡| 中文字幕成人av| 欧美极品aⅴ影院| 久久久综合网站| 欧美精品一区二区在线播放| 日韩欧美国产综合| 7777精品伊人久久久大香线蕉的| 一本色道久久综合亚洲精品按摩| 成人综合婷婷国产精品久久免费| 国产综合久久久久影院| 久99久精品视频免费观看| 视频在线观看国产精品| 亚洲成人动漫在线免费观看| 亚洲一级在线观看| 一区二区三区四区国产精品| 成人欧美一区二区三区小说| 日韩一区在线播放| 亚洲欧洲制服丝袜| 亚洲影视资源网| 午夜精品成人在线| 免费一级片91| 久久99国产精品免费| 国产乱码精品1区2区3区| 国产乱码精品一区二区三区忘忧草 | 国产综合久久久久影院| 国产精品一区二区无线| 丁香婷婷综合网| 成人av在线影院| 色综合久久中文字幕| 欧美色综合久久| 91精品国产品国语在线不卡| 欧美一区二区精美| 久久久久久夜精品精品免费| 中国av一区二区三区| 日韩理论片网站| 日韩激情一二三区| 国产资源在线一区| 9久草视频在线视频精品| 欧美午夜一区二区三区免费大片| 欧美日韩国产欧美日美国产精品| 欧美一卡2卡3卡4卡| 久久久精品日韩欧美| 亚洲激情一二三区| 蜜桃av噜噜一区二区三区小说| 国产麻豆一精品一av一免费| av成人免费在线观看| 欧美日韩国产高清一区二区三区 | 免费av网站大全久久| 国产精品一区二区久激情瑜伽 | 亚洲精品欧美二区三区中文字幕| 午夜影视日本亚洲欧洲精品| 激情av综合网| 欧美性一二三区| 国产女主播一区| 亚洲大片免费看| 国产成人av一区二区三区在线| 91在线视频观看| 日韩欧美国产一区在线观看| 国产精品国产三级国产普通话蜜臀| 日韩高清一区二区| 99re这里只有精品视频首页| 日韩一级精品视频在线观看| 亚洲色图丝袜美腿| 国产成人在线色| 欧美精品久久天天躁| 国产精品国产精品国产专区不片| 日韩不卡一二三区|