単純な if ステートメントのように見えるものを書き上げるのに苦労しています。modがa、b、またはcと等しくない場合は、これを行う必要があります。これが私が試みていたものですが、失敗しました:
var mod = CURRENT_MODULE_ID;
if (mod != "5827289" && mod != "5195103" && mod != "5181422") {
doSomething();
}
これをエディターに入力すると、エラーがあると表示されます。具体的には、「エンティティー名は、エンティティー参照の '&' の直後に続く必要があります。」..テストに行くと機能しません。
どんな助けでも大歓迎です!!
更新: URL: esber.squarespace.com
完全なスクリプト:
<script type="text/javascript" src="/storage/scripts/sessvars.js"></script>
<script type="text/javascript">
<![CDATA[
onload=function(){
sessvars.browserConfirmation?'none':'';
sessvars.ageConfirmation?'none':'';
};
var mod = Squarespace.Constants.CURRENT_MODULE_ID;
if (mod != "5827289" && mod != "5195103" && mod != "5181422") {
if(sessvars.ageConfirmation != "yes"){
window.location = "/verify/";
};
};
]]>
</script>
検証ページ (/verify)、「あなたは検証されていません」ページ (/not-verified)、またはログイン ページ (/ login) -- ユーザーが sessvars を設定して確認済みでない限り、ユーザーはホームページに進むことができます。
これをテストするために、私は esber.squarespace.com にアクセスし、右側のメニュー項目の 1 つをクリックします (このメニューは、ページの操作が完了すると最終的に非表示になります) -- 確認せずに別のページに移動しようとすると、 age first は /verify ページにリダイレクトされるはずですが、それは起こっていません。
スクリプトを次のように修正した場合:
<script type="text/javascript" src="/storage/scripts/sessvars.js"></script>
<script type="text/javascript">
onload=function(){
sessvars.browserConfirmation?'none':'';
sessvars.ageConfirmation?'none':'';
};
var mod = Squarespace.Constants.CURRENT_MODULE_ID;
if (mod != "5827289") {
if(sessvars.ageConfirmation != "yes"){
window.location = "/verify/";
};
};
</script>
それでうまくいく(?)