動画を透過して重ね合わせ

今日も色々やりましたが、寝るまで時間がない(特別用がないときは12時に寝る)ので、やったものの中で簡単に書けそうなものをば。
動画を透過して重ね合わせて比較したい!という声を聞いたので、実装。

もともと縦に2つ動画を並べた動画比較機能は実装していたので、動画を透過させて動かすだけ。

動かす!

jQuery UI Touch punchを使いました。
前回に引き続き、ちょい仕様を足すもにはやはり便利だなと。
スマホだと動きがややスムーズではないものの(都度座標計算してるからなぁ)、とりあえず動画は動かせるように。

$('.video_comparison_background video').draggable({containment:"window"});

書いたコードはこれだけ。

透過!

次は透過。
動画プレイヤーの方はボタンが詰まっていて隙間がなかったので、空いていた右上に透過ボタンを配置。
(影響を受けるのは下の動画だけなので、上にボタン配置微妙だなぁ。)
透過ボタンもアイコンにしようかと思ったんですが、わかりやすい透過のアイコンがなかったので文字に。
白黒を基調にやや「透過」っぽいデザインにしました。 

このボタン(labelタグ)とcheckbox型のinputタグを紐づかせ、このボタンをタッチするとcheckboxにcheckがつき、疑似要素:checked ~ video:nth-child(2) のセレクタで2番目の動画のopacityが0.5になるようにしました(本当はセレクタもうちょい複雑)。

.video_transparent_checkbox:checked ~ div:nth-of-type(3) video{
   opacity:0.5;
}

CSSだけでうまくいくと嬉しい!

Next !

実際に使ってみてわかったのは、比較のために動画の拡大縮小が必要だなということ。
あとは重なり過ぎちゃうと動画比較しづらいので、横か縦にずらして使うことが多いため、windowからはみ出てもOKな仕様でもいいかな。
ピンチでズーム機能も少し手出したので、それも完成したらnoteに書きまする。
2本指タッチでイベント発火させて、最初の2指の距離を保存して、変わっていくその2指の距離に比して、videoの拡大/縮小させるだけ!

この記事が気に入ったらサポートをしてみませんか?