JavaScriptの配列を使用してビデオと画像を使用してスライドショーを作成する場合、次のボタンと前のボタンがあります。ビデオはボタンで動作し、再生します。画像を配列に追加して次にクリックし続けると、これを行う方法がわかりません。また、次または前のキャプションを押すたびに、表示内容と一致するようにキャプションが更新されますが、これも正常に機能します。また、私のビデオはクロームでのみ動作し、それを修正する方法についてのアイデアはありますか?これが私のhtmlとjavascriptのコードです
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>javascript homework 2</title>
<link href="css/styles.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="mainImg">
<h2 id="caption">movie1</h2>
<video id="myVideo" src="video/movie1.mp4" type="video/mp4"/></video>
</div>
<div id="controls">
<div id="playToggle" class="player-button">Play</div>
</div>
<div id="links">
<ul>
<a onClick="nextPhoto();" href="#">Next</a>
<a onClick="prePhoto();" href="#">Previous</a>
</ul>
</div>
</body>
<script src="js/javascript.js"></script>
</html>
// JavaScript Document
/*---Global varibales--*/
var currentImage = 0;
var count = 0;
var videos = new Array("movie1", "movie2", "movie3","Dk1", "Dk2", "Dk3");
var captions = new Array("movie1", "movie2", "movie3", "Dark Knight 1", "Dark Knight 2", "Dark Knight 3");
var video = document.createElement("video");
var playPauseButton = document.getElementById('playToggle');
function switchVideo() {
video.setAttribute('src',videoPaths[CurrentVideos]);
video.onload = function() {
currentVideo++;
if (currentVideo >= videoPaths.length) {
currentImage = 0;
}
}
}
function changeVideo(movie)
{
var thisVideo = "video/"+videos[movie]+".mp4";
document.getElementById("myVideo").src = thisVideo;
document.getElementById("caption").innerHTML = captions[movie];
count = movie;
}
function nextPhoto()
{
count++;
if(count==videos.length)
{
count = 0;
}
var thisVideo = "video/"+videos[count]+".mp4";
document.getElementById("myVideo").src = thisVideo;
document.getElementById("caption").innerHTML = captions[count];
}
function prePhoto()
{
count--;
if(count < 0)
{
count = videos.length-1;
}
var thisVideo = "video/"+videos[count]+".mp4";
document.getElementById("myVideo").src = thisVideo;
document.getElementById("caption").innerHTML = captions[count];
}
playPauseButton.onclick = function() {
if (myVideo.paused) {
myVideo.play();
this.innerHTML = "Pause";
} else {
myVideo.pause();
this.innerHTML = "Play";
}
};