プラグインのダウンロードとインクルード
「jQuery-URL-Parser」は下記URLからダウンロードできます。
jQueryプラグインですのでjQueryも忘れず読み込みます。
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js" type="text/javascript"></script><script type="text/javascript" src="jquery.url.js"></script>URLの取得
以下で現在のURLを取得できます。
var url = $.url();引数に直接URLを入れることもできます。
var url = $.url('http://www.example.com/');エレメントを指定することで「href」からURLを取得することもできます。
<a href="http://www.example.com/">リンク</a>var url = $('a').url();URLの表示
attrメソッドで取得したURLを表示します。
引数に「source」を指定することでURLをそのまま表示します。
alert( url.attr('source') );この引数を変更することでURLのさまざまな文字列を取得できます。
たとえば下記のようなURLをパースしてみます。
url.attr('protocol'); // httpurl.attr('host'); // www.example.comurl.attr('relative'); // /folder/dir/index.html?q=value#flugurl.attr('path'); // /folder/dir/index.htmlurl.attr('directory'); // /folder/dir/url.attr('file'); // index.htmlurl.attr('query'); // q=valueurl.attr('fragment'); // flugパラメータを取得する
「param」メソッドでURLに付いたパラメータだけ扱うことができます。
var url = $.url('http://www.example.com?name=hoge&age=20').param();url.name; //hogeurl.age; //20引数に直接パラメータを入れて取り出すこともできます。
var url = $.url('http://www.example.com?name=hoge&age=20');url.param('name'); //hogeurl.param('age'); //20ディレクトリ階層を取得
「segment」メソッドでディレクトリ階層を配列で取得できます。
var url = $.url('http://www.example.com/folder/dir/example/index.html');url.segment(); // ["folder", "dir", "example", "index.html"]引数を指定することで階層を指定して取得できます。
url.segment(1); // folderurl.segment(-2); // exampleフラグメントパラメータを取得する
「fparam」メソッドを使用することでフラグメントパラメータを取得できます。
var url = $.url('http://example.com/#name=hoge&age=12');url.fparam('name'); // hogeurl.fparam('age'); // 12スラッシュで句切られたものは「fsegment」を使用します。
var url = $.url('http://example.com/#/about/us/');url.fsegment(1); // abouturl.fsegment(2); //us
