JavaScript で http と https を条件分岐させる
提供:maruko2 Note.
目次 |
JavaScript ファイルの場合
プロトコル(http, https)を分岐させる記述例
- http でアクセスがあると http://www.example.com/foo.js を読み込む。
- https でアクセスがあると https://www.example.com/foo.js を読み込む。
<script type="text/javascript">
var jsHost = (("https:" == document.location.protocol) ? "https://" : "http://");
document.write(unescape("%3Cscript src='" + jsHost + "www.example.com/foo.js' type='text/javascript'%3E%3C/script%3E"));
</script>
プロトコル&ホスト名(サーバー名)を変える記述例
- http でアクセスがあると http://www.example.com/foo.js を読み込む。
- https でアクセスがあると https://secure.example.com/foo.js を読み込む。
<script type="text/javascript">
var jsHost = (("https:" == document.location.protocol) ? "https://secure." : "http://www.");
document.write(unescape("%3Cscript src='" + jsHost + "example.com/foo.js' type='text/javascript'%3E%3C/script%3E"));
</script>
CSS ファイルの場合
- http でアクセスがあると http://www.example.com/foo.css を読み込む。
- https でアクセスがあると https://www.example.com/foo.css を読み込む。
JavaScript ファイルとの違いは、3行目の書き方が少し違うだけ。
<script type="text/javascript">
var jsHost = (("https:" == document.location.protocol) ? "https://" : "http://");
document.write(unescape("%3Clink rel='stylesheet' href='" + jsHost + "www.example.com/foo.css' type='text/css'%3E"));
</script>