2012-04-02 11 views
1

私はもともとこのプロジェクトでJQueryを使用しましたが、今はPrototypeを使用する必要があり、JQueryで書いたものをプロトタイプで使用したい。JS:プロトタイプをクリックして入力フィールドを空にします

ユーザーがクリックしたときに検索バーを空にする簡単なコードです。私はプロトタイプでやるのはかなり簡単だと確信していますが、私はどうしたらいいのか分かりません。ここで私はjQueryのために書いたものだ

...

$(window).load(function(){ 
     $("#search").on("click", function() { 
      if ($(this).val() == "search") { 
       $(this).val(""); 
       $(this).css("color", "black"); 
      } 
     }); 
     $("#search").blur(function() { 
      if ($(this).val() == "") { 
       $(this).css("color", "gray"); 
       $(this).val("search"); 
      } 
     }); 
    }); 

は、どのように私はプロトタイプで使用するために上記を変換することができますか?将来的にこれを実行したい人のため

答えて

1

は、ここに私のために働いていたものです:

$('search').onblur = function() { 
    if($('search').value == '') { 
    $('search').value = 'search'; 
$('search').setStyle({color:'gray'}); 

    } 
} 

$('search').onfocus = function() { 
    if($('search').value == 'search') { 
    $('search').clear(); 
     $('search').setStyle({color:'black'}); 
    } 
} 
+1

従来は、プロトタイプのスクリプトはhttp://api.prototypejs.org([ 'Event.observe']を使用します/ dom/Event/observe /)を呼び出してハンドラを登録し、毎回 '$( 'search')の代わりに' this'を使います。これにより、イベントに対して複数のハンドラを、ハンドラに複数の入力を持たせることができます。 – clockworkgeek

関連する問題