だから私は過去数日間、これに対する答えを探していました。これはクッキーへの私の最初の進出だったので、これが皆さんにとって簡単なものになることを願っています. サイトのモバイル バージョンを使用するかどうかをユーザーに尋ね、その応答を Cookie に保存して、次回アクセスしたときに自動的に好みのバージョンに移動する Web サイトを持っています。ただし、モバイル サイトでは、デスクトップ サイトの「/desktop.html」に戻るリンクを提供します。これにより、ユーザーの設定がデスクトップ バージョンのサイトにリセットされ、モバイル サイトで表示していたページの対応するデスクトップ バージョンが読み込まれます。 . それはすべて順調ですが、Cookie プランが機能していないことがすぐにわかりました。ユーザーは自動的にモバイル サイトにリダイレクトされます。これは「デスクトップ. 以前に設定した「グローバル」Cookie にアクセスしてはいけません。私が見つけたすべてのページは、その ";path=/;" を使用してグローバル Cookie を設定すると言っています。文字列ですが、私が見つけることができたページのどれも、後続のページの読み込みでそれにアクセスする方法を教えてくれないようです.
/desktop.html のコードは次のとおりです。
<body style="background: rgb(165, 183, 156); margin: 0pt;" onload="document.cookie = 'desktop; path=/';alert('Preference saved. To get back to the mobile site, click the mobile icon in the bottom left corner.');window.location.href='index.html';">Desktop Preference Saved</BODY>
そして、サブディレクトリ内のすべてのページにあるコードは次のとおりです。
<body style="background: rgb(165, 183, 156); margin: 0pt; " onload="onPageLoad();if(document.cookie.length != 0){if(document.cookie.match('mobile') && isMobile.any()){window.location.href=getMobileURL()}}else if(isMobile.any() && confirm('Go to mobile version of site?\nNote: menu navigation on the regular website does not work on a touch screen.')){window.location.href=getMobileURL();document.cookie = 'mobile; path=/';}else{document.cookie = 'desktop; path=/';if(isMobile.any()){alert('Preference saved. To get to the mobile site, click the mobile icon in the bottom left corner.');}}" onunload="onPageUnload();">
それらは関係ないと思いますが、関数 getMobileURL() と isMobile.* を見る必要があるかどうか教えてください。
ありがとう、ロブ