2017-09-15 200 views
0

我已經爲此答案搜索了很多,但我無法找到它。 那麼,我現在使用的虛擬主機有一個120mb的上傳限制,我需要託管的一些視頻比這個更大。一些想法浮現在腦海中,第一種是將視頻分成幾部分,然後用VideoJS使用JavaScript代碼無縫地播放。使用JavaScript在videojs上播放超過2個視頻?

第二個想法仍然是拆分視頻,但以某種方式將它們連接到1「src:」標籤,以便VideoJS可以像使用1個視頻一樣使用。

第二個想法似乎是不可能的,所以我走了第一個,知道0的JavaScript。 我設法拼湊了一些代碼,使它能夠播放2個視頻,但是當第三個視頻添加時,它的表現很奇怪。 它不是在第一個視頻結束時轉到第二個視頻,而是轉到最後(在這種情況下是第3個視頻)。

我該如何解決這個問題?我使用

代碼:

<script type='text/javascript'> 
     var count=1; 
    var player=document.getElementById('test'); 
    player.addEventListener('ended',myHandler,false); 

    function myHandler(e) { 
     if(!e) 
     { e = window.event; } 
     player.src="test2.mp4"; 
     } 
{ 
var e = document.getElementById("test"); 
player.id = "test2"; 
} 
</script> 

<script type='text/javascript'> 
     var count=1; 
    var player=document.getElementById('test2'); 
    player.addEventListener('ended',myHandler,false); 

    function myHandler(e) { 
     if(!e) 
     { e = window.event; } 
     player.src="test3.mp4"; 
     } 
{ 
var e = document.getElementById("test2"); 
player.id = "test3"; 
} 
</script> 

記住我什麼都不知道的JavaScript

回答

0

所有<script>標籤的變量和函數聲明到全球範圍內。

例如,第二個腳本標籤共享相同的範圍內的第一個腳本標籤:

<body> 
    <script> 
     var foo = "Hello"; 
    </script> 

    <script> 
     console.log(foo); // "Hello" 
    </script> 
</body> 

所以,你在做什麼在你的代碼中兩次聲明的一切,所以你的第二個將myHandler聲明覆蓋你第一。

+0

對不起,但我沒有真正設置只有這些信息......我將如何能夠改變它的代碼,以我想要的方式工作? – Teomania

+0

在嘗試這個問題之前,我建議在Javascript和編程中開始/適度的課程。否則,如果不先了解基本原理,嘗試解釋並浪費自己的時間去嘗試理解是浪費我的時間。 –