.htaccessでPHPのファイルアップロードサイズの上限値を変更
2022.02.5
PHPを使用して画像(動画・PDF等)をアップロードするフォームを作成した際に、ファイル…
スライダーの中に音源を設置し都度再生したいとのご要望があった際に、スライドが切り替わる度に自動で音源が停止されるように実装した、音源の停止方法をメモ。
<div class="slide">
<div class="slide__flame">
<ul class="list">
<li>
<audio controls src="sample01.mp3" id="sample01">音源01</audio>
<img src="img01.jpg">
<div class="play"><a href="sample01">再生</a></div><!-- iOS用 -->
<div class="pause"><a href="sample01">停止</a></div><!-- iOS用 -->
</li>
<li>
<audio controls src="sample02.mp3" id="sample02">音源02</audio>
<img src="img02.jpg">
<div class="play"><a href="sample02">再生</a></div><!-- iOS用 -->
<div class="pause"><a href="sample02">停止</a></div><!-- iOS用 -->
</li>
…
<li>
<audio controls src="sample09.mp3" id="sample09">音源09</audio>
<img src="img09.jpg">
<div class="play"><a href="sample09">再生</a></div><!-- iOS用 -->
<div class="pause"><a href="sample09">停止</a></div><!-- iOS用 -->
</li>
</ul>
</div>
<nav class="slide__nav">
<ul class="slide__nav__list">
<li class="slide__nav__list__item"><a href="" class="prev">前へ</a></li>
<li class="slide__nav__list__item"><a href="" class="next">次へ</a></li>
</ul>
</nav>
</div>
$(function(){
var setWidth = $('.slide__flame').width();
var sliderSize = $('.list').length;
var position_slide = 0;
var maxposition_slide = sliderSize - 1;
//音源の停止処理
$('.slide__nav__list a').click(function(){
for($i = 0; $i < sliderSize; $i++){
$('audio').get($i).pause();
$('audio').get($i).currentTime = 0;
}
});
$('.slide__nav__list__item .prev').click(function(){
if(position_slide > 0){
$('.modal .list').animate({'margin-left':'+='+ setWidth +'px'}, {duration:500, easing:'swing'});
position_slide = position_slide - 1;
}else{
$('.modal .list').animate({'margin-left': '-'+ maxposition_slide * setWidth +'px'}, {duration:500, easing:'swing'});
position_slide = maxposition_slide;
}
return false;
});
$('.slide__nav__list__item .next').click(function(){
if(position_slide < maxposition_slide){
$('.modal .list').animate({'margin-left':'-='+ setWidth +'px'}, {duration:500, easing:'swing'});
position_slide = position_slide + 1;
}else{
$('.modal .list').animate({'margin-left':'0'}, {duration:500, easing:'swing'});
position_slide = 0;
}
return false;
});
})
一時停止(pause)後に「currentTime 」を使い開始位置まで巻き戻しすることで停止と同様の機能を実装しています。
尚、iOSでは再生ボタンをクリックしても動かないため、「再生、停止」のボタンを追加し、下記をスクリプトに追記しています。
$('.play a').click(function(){
var audio = '#'+$(this).attr('href');
$(audio).get(0).play();
return false;
});
$('.pause a').click(function(){
var audio = '#'+$(this).attr('href');
$(audio).get(0).pause();
$(audio).get(0).currentTime = 0;
return false;
});
2022.02.5
PHPを使用して画像(動画・PDF等)をアップロードするフォームを作成した際に、ファイル…
2020.10.3
テキストエリア等で入力した文字の中にURLを含んでいた場合に、自動で認識してリンクタグを…
2024.03.30
外部ファイル(CSVファイル等)を読み込んでサイト内に表示する際に、保存時の文字コードが…
2020.12.5
メールフォームからメールを送信する際に、画像(ファイル)を添付できるようにしてほしいとの…
2023.12.2
ワードプレスの投稿のカテゴリー機能を、目的ごとに使い分けたいというご要望があった際に、カ…
2020.08.1
動画ファイルをCMS化して保存するときに、多くの場合はファイルパスをデータベース(MyS…
2019.12.29
メールフォーム等での入力値チェック(バリデーション)。PHPの「preg_match」(…
2022.02.19
画像データ等をサーバーにアップロードする際、一点づつアップロードしても良いけれど、ファイ…
2020.08.15
フォームの入力値やURLのパラメータ等、文字列や数値を受け取る際に正規表現を利用してバリ…
2022.09.24
パソコンやスマートフォンの戻るボタンを使って画面を戻す(ブラウザバックする)時があります…