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

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

新規登録して質問してみよう
ただいま回答率
85.35%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

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

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

2347閲覧

sessionStorageを利用して、初回アクセス時のみオープニングアニメーションを表示したいです。

mina37

総合スコア1

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

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

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

1クリップ

投稿2020/07/31 22:42

前提・実現したいこと

ワードプレスでサイト構築をしています。
サイトに初回アクセス時にオープニングアニメーションを表示後にTOPページを表示、ブラウザを閉じるまではアニメーションを読み込まない設定にしたいです。

発生している問題・エラーメッセージ

初回のローディングアニメーションまでは問題なく表示されますが、リロードすると表示が真っ白になってしまいます。
jsが不得意のため、JSの書き方に問題があるかと思われますので、詳しい方ご教示いただけると幸いです。

該当のソースコード

■header.php内 javascript
<script type="text/javascript">
const keyName = 'visited';
const keyValue = true;

if (!sessionStorage.getItem(keyName)) {
//sessionStorageにキーと値を追加
sessionStorage.setItem(keyName, keyValue);

//ここに初回アクセス時の処理 jQuery(function() { setTimeout(function(){ jQuery('.start p').fadeIn(1600); },500); //0.5秒後にロゴをフェードイン! setTimeout(function(){ jQuery('.start').fadeOut(3000); },5000); //5秒後にロゴ含め真っ白背景をフェードアウト!

});

} else {
//ここに通常アクセス時の処理
jQuerystart.addClass('none');
sessionStorage.setItem('access', 0);
}
</script>

■header.php内 body直下 HTML
<div class="start">
<p><img src="/wp-content/uploads/2020/07/o_animation03.gif" alt=""></p>
</div>

■css
/* オープニングアニメーション */
.start {
background: #FFF;
position: fixed;
top: 0;
left: 0;
height: 100%;
width: 100%;
z-index: 9000;
}
.start p {
position: fixed;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
display: none;
z-index: 9999;
width: 1000px;
}
.none{display:none;}

試したこと

下記URLを参照にJSを真似て実装してみました
https://into-the-program.com/execution-firsttime-access/

▼▼ 参照コード ▼▼
const keyName = 'visited';
const keyValue = true;

if (!sessionStorage.getItem(keyName)) {
//sessionStorageにキーと値を追加
sessionStorage.setItem(keyName, keyValue);

//ここに初回アクセス時の処理 console.log("初めての訪問です");

} else {
//ここに通常アクセス時の処理
console.log("訪問済みです");

}

至らないコードで恐縮ですが、ご教示の程よろしくお願いいたします。

気になる質問をクリップする

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/08/01 01:34

「WordPress」のタグはつけてください。 あと、コードはマークダウンのcode機能を利用してご提示ください。
Lhankor_Mhy

2020/08/01 02:07

jQuerystart には何が入っていますか?
guest

回答1

0

ベストアンサー

まずセッション処理と切り分けて
アニメーションなしの画面で表示できるようになってますか?

それができているのであればjs かPHPのエラーは出ていませんか?

投稿2020/08/01 01:19

anozon

総合スコア662

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mina37

2020/08/01 01:56

ご回答ありがとうございます。 jsの書き方の間違いに気付き、下記に修正したところ、希望通りの動きになりました。 ■js 変更点 } else { //ここに通常アクセス時の処理 jQuery(function(){ jQuery('.start').addClass('none'); }); } 一番最初にご回答いただきましたので、ベストアンサーに選ばせていただきました。 至らないコードをご確認頂き、ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問