サイトのユーザー滞在時間は長ければ長いほどいいです。
滞在時間が長ければその分だけ、PV増加やコンバージョン率向上の可能性がアップします。
根本的には、良いコンテンツを作ることがそのためには必要です。
そうすれば、おのずと滞在時間は伸びるでしょう。
でも、小手先のテクニックで滞在時間が伸びるとしたら、どうしますか?
是非とも、そのテクニックを使ってみたいと思いますよね。
ということで、今回はそのテクニックを紹介します。
そのテクニックは、離脱防止モーダルと言われています。
一部では、離脱防止ポップアップとも言いますね。
本記事の内容
- 離脱防止モーダルとは?
- 離脱防止モーダルの仕組み
- 離脱防止モーダルのサンプルコード
それでは、上記に沿って解説していきましょう。
離脱防止モーダルとは?
ブラウザでページを閉じる際、以下を見たことがありませんか?
個人的には、このダイアログが嫌いです。
でも、使いようによっては、とても効果的なモノになります。
例えば、入力フォームで項目が多い場合があります。
苦労してそれらを入力したのに、誤ってそのページから離脱したことがありませんか?
ブラウザの「戻る」ボタン・タブの「×」をクリックしてしまったような場合です。
一旦そのページから離脱すると、入力した苦労はすべて無駄になります。
このような悲劇を防ぐため、上記ダイアログが役に立ちます。
このダイアログを離脱防止モーダルと呼ぶことがあります。
しかし、本記事では以下を離脱防止モーダルと言います。
もし実物を見たいなら、このページから離脱しようとしてみてください。
ブラウザの「戻る」ボタン・タブの「×」をクリックしようとすれば、出てきます。
こっちの離脱モーダルなら、ユーザーの邪魔をしません。
無視したければ、そのまま離脱可能です。
でも、冒頭のダイアログの場合は、「このページを離れる」ボタンを押す必要があります。
入力フォーム画面ではないのに、こんなことをされたらイラっとするだけです。
以上、離脱モーダルに関しての説明でした。
次は、離脱モーダルの仕組みを説明しましょう。
離脱防止モーダルの仕組み
技術的には、大きく分けると以下の2つです。
- モーダルウィンドウ
- マウスイベント
この二つの技術が、必要となります。
どちらかと言うと、基本中の基本です。
そのため、技術ついては説明しません。
あとでサンプルコードを載せますが、見ればわかるレベルです。
見ればわかるレベルとは言え、以下の3つの知識は必要です。
- HTML
- CSS
- JavaScript(jQueryベース)
では、具体的な仕組みを説明していきます。
次の画面は、本サイトの記事画面です。
この画面の上部に色が付いている範囲(エリア)があります。
実際の画面上では、こんな色はついていません。
この色のエリアに、マウスカーソルが入ると離脱防止モーダルが表示されます。
具体的には、mouseoverイベントになります。
たった、これだけです。
そんな大層なことは、していません。
なお、先ほどからマウスカーソルというキーワードが出てきています。
察しの通り、スマホには対応していません。
本記事の離脱防止モーダルは、PC専用となります。
スマホに対応するなら、全く別の方法が必要でしょうね。
では、最後にサンプルコードを載せておきます。
離脱防止モーダルのサンプルコード
- HTML
- CSS
- JavaScript(jQueryベース)
それぞれを確認していきましょう。
HTML
<div id="id_wdp_border"></div> <div class="modal js-modal"> <div class="modal__bg js-modal-close"></div> <div class="modal__content"> <img src="画像パス" style="width:90%;"> <p> あなたにもできます。<br /> こんな感じの離脱防止モーダルが、すぐにできます。<br /> サンプルコードだけでも持って帰ってください。 </p> <a class="js-modal-close" href="">閉じる</a> </div><!--modal__inner--> </div><!--modal-->
ここで説明が必要なのは、以下ですね。
<div id="id_wdp_border"></div>
これは、「離脱モーダルの仕組み」で触れた画面上部の色がついた部分です。
CSS
#id_wdp_border{ width: 100vw; height: 10px; position: fixed; top: 0; left: 0; right: 0; } .modal{ display: none; height: 100vh; position: fixed; top: -28px; left:0; width: 100%; z-index: 99999; } .modal__bg{ background: rgba(0,0,0,0.8); height: 100vh; position: absolute; width: 100%; } .modal__content{ background: #fff; left: 50%; padding: 40px; position: absolute; top: 50%; transform: translate(-50%,-50%); width: 60%; }
上記はあくまで本ブログに適したモノとなっています。
.modalの「top: -28px;」は、各環境によって異なります。
JavaScript(jQueryベース)
jQuery(function() { jQuery('#id_wdp_border').on('mouseover', function () { jQuery('.js-modal').fadeIn(); return false; }); jQuery('.js-modal-close').on('click',function(){ jQuery('.js-modal').fadeOut(); return false; }); });
JQueryの利用が、前提のコードです。
何も説明はいらないですね。
もちろん、これはあくまで基本に過ぎません。
ただ、離脱防止モーダルが毎回出るのはウザいです。
(※このページでは、ウザいけど出しています)
クッキーに情報を保存して、表示を制限するなども必要となってくるでしょう。
その辺りの制御に関しても、今後入れていきたいです。
また、その際には記事にして解説します。
あなたにもできます。
こんな感じの離脱防止モーダルが、すぐにできます。
サンプルコードだけでも持って帰ってください。