質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.33%

  • JavaScript

    17542questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

android で videoタグを一時停止のまま連続でseekすると反応が遅い

受付中

回答 0

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 96

hyogo

score 6

android で videoタグを一時停止のまま連続でseekすると反応が遅くなる

div ie="seek" ボタンをclickすると0.1秒ずつvideoのcurrentTimeが増えるコードなのですが

  • iOS(ipad,iphoneの11.2以上のsafari,chrome) 

  • PC(chrome最新,edge最新) 
    ではclickして0.1秒以内ぐらいのほぼ同時に見える時間差でseekしてくれるのですが、androidのchrome最新では10回ほど連打したあと1秒以上かかってからtimeupdateとseekedイベントが呼ばれてseekが完了するようになってしまいます。ゆっくりの間隔でクリックするとiOSやPCのような時間差でずっとseekしてくれるのですが。

  • 動画は停止した状態で0.1秒ずつseekしたい

  • 連打しても連打した回数分0.1秒ずつseekさせたい

  • inline再生

androidの仕様なのか、他どんな環境で起こることなのか、対策など教えていただきたくよろしくお願いいたします。

<div class="wrap" style="">
  <div id="play" style="background-color:red;"><p>play</p></div>
  <div id="pause" style="background-color:skyblue;"><p>pause</p></div>
  <div id="seek" style="background-color:pink;"><p>seek</p></div>
  <div id="seek0" style="background-color:gray;"><p>seek0</p></div>
</div>
  <div id="container" class="container">
  <video id="video" class="video" width="1366" height="768" playsinline="" muted="">
  <source src="https://res.cloudinary.com/dofcsz0es/video/upload/v1531745063/aaa.mp4">
  </video>

</div>
let v = document.getElementById("video");
v.controls = false;
//jquery
jQuery(window).load(function(){
//touchstart

  $("#play").on("click",function(){
    v.play();
//    console.log("play==" + v.currentTime);
//    $("#play p").text("play==" + v.currentTime);
  });
  $("#pause").on("click",function(){    
    v.pause();
//    console.log("pause==" + v.currentTime);
//    $("#pause p").text("pause==" + v.currentTime);
  });
  $("#seek0").on("click",function(){     
//    v.pause();
//    v.currentTime = 0;
//    console.log("seek0==" + v.currentTime);
//    $("#seek0 p").text("seek0==" + v.currentTime);
  });
  $("#seek").on("click",function(){
    currentTimeCount ++;
    v.currentTime = currentTimeCount*0.1;
//    console.log("seek==" + v.currentTime);
//    $("#seek p").text("seek==" + v.currentTime);
  });

});
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

まだ回答がついていません

同じタグがついた質問を見る

  • JavaScript

    17542questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。