お世話になっております。
javascriptで動画を見ながらメモを保存できるようなサイトを作成しています。その機能の一つにメモを保存した時間をクリックすると動画がその時間へジャンプするというものをつけたいです。
例えば、動画が10秒まで再生された時にメモを保存すると
「・0:10 メモ内容」
と保存され、この「0:10」をクリックすると自動で動画が10秒のところへ飛びます。
現在メモを保存するところまではできているのですが、メモを保存した時間へジャンプすることができていません。
正確にはジャンプすること自体はできているのですが、例えば動画の再生時間が2秒、5秒、9秒でそれぞれメモを保存すると2秒や5秒のところをクリックしても9秒、つまり1番新しくメモした時間へ飛ばされてしまいます。
保存した再生時間が上書きされないためにはどうしたら良いのでしょうか。わかりにくい文章で恐縮ですが、何卒ご教示いただけると幸いです。
以下は保存ボタンを押した時の処理です。
javascript
1// 保存ボタンを押した時 2 function save() { 3 var MemoData = document.form1.Memo.value;//htmlのフォームからメモデータを取得 4 memodata.push(MemoData);//配列に入れる 5 6 now = Math.floor(video.currentTime);//現在の再生時間を取得 7 second=now%60;//秒を取得 8 byou.push(second);//配列に入れる 9 minute=now/60;//分を取得 10 hun=Math.floor(minute); 11 minute2.push(hun);//配列に入れる 12 time.push(now);//現在の再生時間を配列に入れる 13 14 var text=[]; 15 for (var i = 0; i < memodata.length; i++) { 16 jikan=time[i]; 17 if(byou[i]<10){ 18 text.push('<li>'+ '<a href="javascript:move("+jikan+");">' + "【" + minute2[i] +":" +"0"+ byou[i]+ "】" +'</a>'+ memodata[i] + '</li>'); 19 }else{ 20 text.push('<li>'+ '<a href="javascript:move("+jikan+");">' + "【" + minute2[i] +":" + byou[i]+ "】" +'</a>'+ memodata[i] + '</li>'); 21 } 22 } 23 //innerHTMLを使用して表示 24 var txt = document.getElementById("txt"); 25 txt.innerHTML = text.join(''); 26 } 27 28 //保存された再生時間を押した時 29 function move(start) { 30 video.currentTime = start; 31 } 32
回答1件
あなたの回答
tips
プレビュー