電子書籍の厳選無料作品が豊富!

いつもお世話になっております。
JavaScriptでの条件分岐で実装したいことがあるのですが解らず悩んでおります。どなたかお知恵を拝借ください。

現在、HTML内に以下の要素があります。

・サイト内(同一ドメイン)にあるページへのテキストリンク
 例) <a href="page2.html">PAGE2</a>
・SSL領域(別ドメイン+HTTPS)にあるページへのテキストリンク
 例) <a href="https://secure.jp/~user/form.html">お問い合わせ</a>
・サイト内(同一ドメイン)にあるPDFファイルへのテキストリンク
 例) <a href="example.pdf">サンプル資料</a>
・他のサイトへのテキストリンク
 例) <a href="http://www.yahoo.co.jp/">Yahoo! Japan</a>

本題の実現したいことですが、上記の状態のリンク先をJavaScriptを用いて条件分岐させたうえで、jQueryによるonclickイベントを自動的に付与したいと思っています。

こちらの都合で申し訳ないのですが、JavaScriptをHTML上に直接記載する必要があるため、できる限り簡潔なソースで実現できれば尚助かります。

何卒よろしくお願い申し上げます。

A 回答 (1件)

http://semooh.jp/jquery/api/selectors/
属性セレクタとnotなんかでいけると思う。

$("a[href^='https:']").click(function(){ // https:で始まるリンク
alert('https');return false;
});
$("a[href$='.pdf']").click(function(){ // .pdfで終わるリンク
alert('pdf');return false;
});
$("a[href^='http:']").click(function(){ // http:で始まるリンク
alert('http');return false;
});
$("a:not([href^='https:'][href$='.pdf'][href^='http:'])").click(function(){ // 上記以外のリンク
alert('その他');return false;
});


なお、上記例ではhrefのないAnchorの存在は考慮してないです。

この回答への補足

steel_gray様
ご連絡が遅くなり申し訳ございません。
その後いろいろと試して無事に解決することができました。
この度は本当にありがとうございました。

補足日時:2009/12/05 02:15
    • good
    • 0
この回答へのお礼

steel_gray様

早々のご回答、ありがとうございます。
試してみて、追ってご報告差し上げます。

お礼日時:2009/12/01 11:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!