1

私のHTMLには次のようなプレースホルダーがあります。

<input id="additionalsearch" type="text" value="Search Within" onfocus="if (this.value=='Search Within')this.value='';" onblur="if (this.value=='')this.value='Search Within';">

それは私の選択ではなく、実際に削除することはできません...しかし、CSSもどのように設定できるのか疑問に思いました...とのようなことをしたいと思いonfocus="if (this.value=='Search Within')this.value=''; $(this).css('color','000000');"ますonblur="if (this.value=='')this.value='Search Within';$(this).css('color', 'A9A9A9');"。どうすればそれを達成できますか?

ありがとう

4

5 に答える 5

3

疑似セレクターを使用できます。

input[type=text]:focus {
  color: black;
}

input[type=text] {
  color: gray;
}
于 2012-01-17T22:54:37.210 に答える
2

実際、2つの間違いを除いて、ほとんどコードを提供しました。

  1. 色の前に#が必要です。
  2. 条件文を中かっこで囲む必要があります

他のすべては大丈夫でした(何が起こっているのかをより明確にするために色を変更しました):

<input id="additionalsearch" type="text" value="Search Within" onfocus="if (this.value=='Search Within'){this.value='';$(this).css('color','#00ff00');}" onblur="if (this.value==''){this.value='Search Within';$(this).css('color', '#ff0000');}">

http://jsfiddle.net/A4cuy/6/

もちろん、これは本当に醜いコードになってしまうので、javascriptを別々のハンドラーに入れることをお勧めします。

于 2012-01-17T22:59:31.407 に答える
0

あなたは以下を使うことができます

$('#additionalsearch')
.bind('focus',function(){
       if (this.value=='Search Within'){
             this.value='';
        };
        $(this).css('color','black')})
.bind('blur',function(){
       if (this.value==''){
          this.value='Search Within';
       }           
       $(this).css('color','gray')});
于 2012-01-17T23:00:19.130 に答える
0

色には疑似クラス:focusを使用できます http://www.w3schools.com/cssref/sel_focus.asp

「検索範囲」については、defaultTextjQueryプラグインを使用することをお勧めします

http://archive.plugins.jquery.com/project/defaultInputText

于 2012-01-17T22:55:54.440 に答える
0

これを味わう:

<input id="fldnm" style="background:#B6FF00" type="text" value="Search"
  onfocus="if(this.value=='Search'){this.value=''}this.style='background:#FF7F7F';"
  onblur="if(this.value==''){this.value='Search'this.style='background:#B6FF00';}else{};"
   />
于 2015-01-22T15:50:48.463 に答える