- 締切済み
特定元以外のアクセスを他に飛ばす方法の除外複数化
特以外のアクセスを他に飛ばす方法で検索すると、 ↓ ======================= <script type="text/JavaScript"> var link = document.referrer; // リンク元取得 var paths = link.split("/"); var path = paths[paths.length - 1]; // ファイル名 if(path != "test.html"){ // test.html以外からのアクセスは以下のアドレスに飛ばす location.href = "http://www.~"; } </script> ======================= このスクリプトが出てきて見事解決できたのですが、 これだとtest.htmlだけしか除外できません。 この除外元を一つだけではなく、二つに増やす方法を教えてください。 if(path != "test.html; example.html"){ みたいに「;」を打って試してみたのですがなりませんでした。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- ORUKA1951
- ベストアンサー率45% (5062/11036)
もし、その目的が 質問iframeの中にページを自動で飛ばす方法 - HTML - 教えて!goo ( http://okwave.jp/qa/q7277208.html ) と同じでしたら、そのスクリプトではなく、そちらで示した方法を使うべきです。 また、一連のページを順番に見てほしいならCGIなりで、きちんとコントロールすべきです。 なお、「または」は、|| ですから if(path != "test.html" || path != "test2.html"){ でもよいし if(path != "test.html"{} els if (path != "test2.html"){} else{} いずれにしろ、何のためにという目的を書かれたほうが良いでしょう。
- utun01
- ベストアンサー率40% (110/270)
No.2です。 すいません、比較演算子ですが、「=」ではなく「==」ですね。 適当に書きすぎた;;
- utun01
- ベストアンサー率40% (110/270)
単純に function func(){ if(path = "test.html"){ return; } if(path = "example.html"){ return; } location.href = "http://www.~"; } func(); みたいな感じではダメなのでしょうか。 こういう風に書くならswitchを使うべきかもですが。
- ORUKA1951
- ベストアンサー率45% (5062/11036)
.htaccess HTTP REFERER - Google 検索 ( http://www.google.co.jp/#sclient=psy-ab&hl=ja&safe=off&site=&source=hp&q=.htaccess+HTTP+REFERER&psj=1&oq=.htaccess+HTTP+REFERER&aq=f&aqi=&aql=&gs_sm=e&gs_upl=1594l71141l0l71874l19l19l3l7l4l0l545l1780l0.7.1.5-1l9l0&bav=on.2,or.r_gc.r_pw.,cf.osb&fp=f827a9af1eb2b0c5&biw=1016&bih=611 ) じゃダメなの? javascriptを許可して無くても・・・。ただし、HTTP_REFERERを言わないブラウザには、やはり、いずれもダメですが・・。