1

良い一日

この関数を使用して、現在のウィンドウのパス名を取得しています。

var pathname = window.location.pathname;

if(pathname == '/someDir'){
   do something
}

パスがない場合、つまりhttp://mydomain.comの場合はどうしますか?

今、私にできることは次のとおりです。

var hostname = document.location.hostname;

if(hostname == 'mydomain.com'){
   do something on the home page only!;
}

しかし、上記のコードの問題は、ホスト名がどこにでも含まれているため、すべてのページで実行されることです...つまり、mydomain.com/contact

では、ホームページ (「mydomain.com」) のみをターゲットにするにはどうすればよいでしょうか?

4

3 に答える 3

1

これを試して。

var hostname = document.location.hostname;
var pathname = document.location.pathname;

if(hostname == 'mydomain.com' && pathname == '/'){
   do something on the home page only!;
}

pathname「/」に等しいかどうかのチェックを追加したことに気付くでしょう。サーバーを別の方法で構成していない限り、それがホームページになります。

ユーザーが最終的にそこにたどり着いた場合に備えて、パス名'/index.htm'(またはインデックス ファイルがあればそれ) を確認することもできます。

于 2013-04-11T14:33:05.017 に答える
0

これは明白なことを述べているかもしれませんが、どうですか

var pathname = window.location.pathname;
if (pathname === "/") {
  do something on the home page only!;
}

コードは自分のドメイン「mydomain.com」でのみ実行されるため、ホスト名を確認する必要はありません。

于 2013-04-11T14:32:49.367 に答える
0

James Padolsey の URL パーサーを見てください。これは、URL の任意の部分 (ホスト、ホスト名のクエリ文字列、パスなど) を提供する単純な JS 関数です。

http://james.padolsey.com/javascript/parsing-urls-with-the-dom/

于 2013-04-11T14:33:25.180 に答える