.htaccessでPHPのファイルアップロードサイズの上限値を変更
2022.02.5
PHPを使用して画像(動画・PDF等)をアップロードするフォームを作成した際に、ファイル…
トップページなどのメインイメージの切り替えをする際、自動と手動を組み合わせて行うことも多いですが、「setInterval」と「clearInterval」で時間の管理をしっかり行わないと均一に処理が行われなくなることがあるので実装方法をメモ。
$(function(){
//画像の数を数えてナビゲーションを設置
var fadeSize = $('.fanc__fadeimage ul li').length;
var fadeOrder = [];
for (var i = 0; i < fadeSize; i++){
fadeOrder.push('<li><a href=""></a></li>');
}
$('.fanc__fadeimage__nav ol').html(fadeOrder);
$('.fanc__fadeimage__nav ol li:first-of-type a').addClass('active');
//自動繰り返しの開始
var timerId = setInterval(fadeImage, 6000);
//ナビゲーションボタンクリック時の処理
$('.fanc__fadeimage__nav a').click(function(){
//自動繰り返しの停止
if(timerId) {
clearInterval(timerId);
}
$('.fanc__fadeimage__nav a').removeClass('active');
$(this).addClass('active');
var index = $(this).parent('li').index();
var next = $('.fanc__fadeimage ul li').eq(index);
$('.fanc__fadeimage ul li').removeClass('last-active');
$('.fanc__fadeimage ul li.active').addClass('last-active').removeClass('active');
next.css({'opacity':'0'}).addClass('active').animate({'opacity':'1.0'}, 2500, function(){
//自動繰り返しの再設定
timerId = setInterval(fadeImage, 6000);
});
return false;
});
});
//フェードインアニメーション関数
function fadeImage(){
var fadeSize = $('.fanc__fadeimage ul li').length;
var index = $('.fanc__fadeimage__nav a.active').parent('li').index();
$('.fanc__fadeimage__nav ol li a').removeClass('active');
if(index < fadeSize - 1){
$('.fanc__fadeimage__nav li').eq(index + 1).find('a').addClass('active');
}else{
$('.fanc__fadeimage__nav li:first-of-type a').addClass('active');
}
var fadeActive = $('.fanc__fadeimage ul li.active');
var next = fadeActive.next().length ? fadeActive.next() : $('.fanc__fadeimage ul li:first');
$('.fanc__fadeimage ul li.last-active').removeClass('last-active');
fadeActive.addClass('last-active').removeClass('active');
next.css({'opacity':'0'}).addClass('active').animate({'opacity':'1.0'}, 2500);
}
<div class="fanc__fadeimage">
<ul>
<li class="active"><img src="○○○○.jpg"></li>
<li><img src="○○○○.jpg"></li>
<li><img src="○○○○.jpg"></li>
<li><img src="○○○○.jpg"></li>
</ul>
<nav class="fanc__fadeimage__nav">
<ol>
</ol>
</nav>
</div>
参考例はフェードインアニメーション「fadeImage()」。
「setInterval」を使用して6秒ごとにがフェードインアニメーション関数の仕様で画像を自動切り替え。
停止する際に対象となる処理を指定するため「timerId」を定義しています。
ナビゲーションボタンをクリックされたときに「clearInterval」を使用して繰り返し処理を停止。
クリック時の処理を完了したのち再度「setInterval」を使用して繰り返し処理を再設定しています。
2022.02.5
PHPを使用して画像(動画・PDF等)をアップロードするフォームを作成した際に、ファイル…
2020.10.3
テキストエリア等で入力した文字の中にURLを含んでいた場合に、自動で認識してリンクタグを…
2024.03.30
外部ファイル(CSVファイル等)を読み込んでサイト内に表示する際に、保存時の文字コードが…
2020.12.5
メールフォームからメールを送信する際に、画像(ファイル)を添付できるようにしてほしいとの…
2023.12.2
ワードプレスの投稿のカテゴリー機能を、目的ごとに使い分けたいというご要望があった際に、カ…
2020.08.1
動画ファイルをCMS化して保存するときに、多くの場合はファイルパスをデータベース(MyS…
2022.09.24
パソコンやスマートフォンの戻るボタンを使って画面を戻す(ブラウザバックする)時があります…
2019.12.29
メールフォーム等での入力値チェック(バリデーション)。PHPの「preg_match」(…
2022.02.19
画像データ等をサーバーにアップロードする際、一点づつアップロードしても良いけれど、ファイ…
2020.08.15
フォームの入力値やURLのパラメータ等、文字列や数値を受け取る際に正規表現を利用してバリ…
時間を指定して表示を切り替える際にPHPを使用することが多かったのだけれど、利用している…
ホームページへ動画を組み込む際に、動画が設置されているところまでスクロールして、表示され…
フォーム投稿で画像をアップロードする際に、追従式のメールフォームを作成し、コンテンツの途…