- 締切済み
HTMLに記載したいjavascript
教えてください。 URLに一定のパラメーターがついている場合は、 右記のようなjs呼び出し部分を省略(スキップ)させるような javascriptの関数はありませんか? <script type='text/javascript' src='https:xxx.js?user=xxx'></script>
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- dscripty
- ベストアンサー率51% (166/325)
まず、 「URLに一定のパラメーターがついている場合は、 右記のようなjs呼び出し部分を省略(スキップ)させる」 より 「URLに一定のパラメーターがついて」いない「場合は、 右記のようなjs呼び出し部分を」実行させる というふうに考えたほうが楽だよ。 <head> …… <script type="text/javascript"> //<!-- if (『一定のパラメータが付いていないとき』) { //head 要素に var head = document.getElementsByTagName("head")[0]; //script 要素を var script = document.createElement("script"); script.setAttribute("type", "text/javascript"); script.setAttribute("src", "https:xxx.js?user=xxx"); //追加する head.appendChild(script); } //--> </script> </head> ※ メジャーなブラウザなら head タグの中に書いておけば head 要素は作られたあとだからうまく動いてくれるとおもう。 一定のパラメータが付いているかどうかの判断は window.location の search という属性を使うと楽だよ? http://www.w3.org/TR/Window/#location 例えば、次の URL でリクエストしたとすると、 http://example.com/index.html?some_parameter window.location.search の値は "?some_parameter" だから、 『一定のパラメータが付いていないとき』の判断は、 window.location.search != "?some_parameter" とするといいかも。