JavaScript

ガイド:高橋 登史朗

Ajaxなど、何かと最近騒がれているJavaScriptの最新情報とその活用方法を解説します。

掲示板 取材依頼 問合せ

Ajaxを使おう

掲載日: 2008年 09月 27日

jQueryのセレクタ Forms 3


jQueryのセレクタ Forms 3


Formsセレクタの中から、 前々回 は、 :input、:text、:password、 前回 は、:radio、:checkbox 、:submit を 紹介しました。今回も、その続きを3つ試します。

jQueryライブラリ本体の入手方法と、セレクタについてのドキュメントは下記のページにあります。

:image image タイプのinput要素

まず、type属性がimage の要素です。つまり、<input type="image">の要素にマッチするセレクタです。

では、試してみましょう。ボタンの画像を操作をしてみます。下記ボタンにマウスで触れてクリックしてみてください。


type属性がimageのボタンにマウスがhoverやclickすることで画像が変わります。 focus時にblur()することで、focus時にボタンに表示される点線も消しています。

また、サンプルですので、普通は、type属性がimageのボタンをクリックすると送信されますが、ここでも今までのようにonsubmitに「return false」を与えることで送信を停止しています。

ソースは次の通りです。
<div id="test1">
  <form onsubmit="
    alert('テストですので送信はできません');return false">
    <input type="image" src="btn1.gif">
  </form>
</div>

<script type="text/javascript">
  jQuery(function($){

    //フォーカス時の点線を消す
    $("form :image","#test1").focus(
       function(){ $(this).blur() }
    )

    //マウスホバー時の画像書き換え
    $("form :image","#test1").hover(
        function(){ $(this).attr("src","btn2.gif") },
        function(){ $(this).attr("src","btn1.gif") }
    );

    //クリック時の画像書き換え
    $("form :image","#test1").click(
        function(){ $(this).attr("src","btn3.gif") }
    );

  });
</script>
ちなみに使っている画像は次の通り。
btn1.gif
btn2.gif (hover時)
btn3.gif (click時)

今回は、jQueryのイベント操作をいくつか(focus,hover,click)試してみましたが、詳しくは、http://docs.jquery.com/Events などをご参照ください。

このサンプルをみてもわかる通り、jQueryのイベントは、イベント名を冠したjQueryメソッドの引数として、そのイベント時の動作関数を引数として与える、という直感的にわかりやすいつくりになっています。

次ページでは、 :reset を試します。

ガイドメールマガジン
携帯電話のメールアドレスでは登録できません

掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます。