そもそも実装可能かどうかなのかよくわからず、詳しい方いましたら教えてください。
Webサイト閲覧時にブラウザで戻る動作をした時に、
オリジナルのバナー形式のポップアップを表示させたいです。
以下のような方法でそれとなく実装できましたが、Chromeで思った挙動をしません。(表示される時もあれば表示されない時もある)
JavaScript
1$(function() { 2 if (document.referrer.indexOf(location.hostname) == -1) { 3 4 if( window.history && window.history.pushState && history.state !== undefined) { 5 6 history.pushState( "test", null, "" ); 7 8 $(window).on("popstate", function(e) { 9 10 $(window).off("popstate"); 11 12 if (location.hash.indexOf('#') != -1) return; 13 14 //モーダル表示処理 15 16 }); 17 } 18 } 19}); 20
調べてみると、セキュリティ上、ブラウザバックでのオリジナルのポップアップを表示させるようなイベントは実行できないという情報を多々目にしました。
参考:Google Chromeは「戻る」ボタンで戻れない悪質なウェブサイトを駆逐する予定
参考:離脱防止警告をモーダルWindowで出したい
参考:ブラウザバックのイベントを取得する方法
現状、中途半端に表示される状態なため、クライアントから不安定な挙動を直してほしいと言われています。
そもそもちゃんと書けば実装できるのか、それともしないほうがいいのか、どうなのでしょうか。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/24 03:45
2020/01/24 04:10
2020/01/24 04:48