2016-10-24 9 views
0

ダブルクリックではなくクリックした後にカーソルを検索バーに表示させるには、コードを変更する必要がありますか?または、フィールドへのワンクリック後にプレースホルダが消えないのはなぜですか? (値とプレースホルダーの基本的な考え方は、このようにとどまるべきです)。検索バーでカーソルが表示される前にダブルクリックする必要があります

HTML

<form action="search.php" method="GET"> 
    <input type="text" name="q" id="searchbox" placeholder="" value="Suche..." maxlength="99" autocomplete ="off" onMouseDown="active();" onBlur="inactive();"/> 
    <button id="searchbutton"> Los!</button> 
</form> 

Javascriptを

function active(){ 
    var searchbox = document.getElementById('searchbox'); 
    if(searchbox.value == 'Suche...'){ 
     searchbox.value = '' 
     searchbox.placeholder = 'Suche...'   
    } 
} 

function inactive(){ 
    var searchbox = document.getElementById('searchbox'); 

    if(searchbox.value == ''){ 
     searchbox.value = 'Suche...' 
     searchbox.placeholder = '' 
    } 
} 
+0

本当にわからないが...私のためだけで1クリックで動作するようです。 https://jsfiddle.net/2844uL3r/ –

+0

はい、あなたは正しいですが、Firefoxではできません。:/ – Passenger

答えて

2

プレースホルダを作るために、すべてのそのコードを使用する必要はありません。あなたはちょうどこれが必要です:

<form action="search.php" method="GET"> 
    <input type="text" name="q" id="searchbox" placeholder="Suche..." maxlength="99" autocomplete ="off"> 
    <button id="searchbutton"> Los!</button> 
</form> 

そしてそれは動作します。プレースホルダタグを使用すると、プレースホルダタグをクリックして入力を開始すると、テキストが消えてしまいます。そのためにJavaScriptコードは必要ありません。

もう1つのことは...そのコードは「jQuery」コードではなく、単にJavaScriptコードです。プレースホルダの色の使用のCSS変更するには

:あなたはここに期待しているもの

::-webkit-input-placeholder { 
    color: black; 
    } 

:-moz-placeholder { /* Firefox 18- */ 
    color: black; 
} 

::-moz-placeholder { /* Firefox 19+ */ 
    color: black; 
} 

:-ms-input-placeholder { 
    color: black; 
} 
+0

私はそれがこのように動作することを知っていますが、私のバージョンでは変数 "Suche .. 。 "黒で書かれています。私の言っていることが分かるよね?アドバイスありがとう: – Passenger

+1

私はあなたがしたいことを完全に理解していません。プレースホルダがデフォルトのグレーの代わりに黒色になるようにしたいのですか?その後、CSSでそれを変更します。 –

+0

大丈夫です、最初はちょっとした問題ですが(ちょっとした違いがありますが)、なぜワンクリックではなくダブルクリックが必要なのかを知りたいのです。 私がしたいこと:あなたがサイトに行くとき、検索バーには「Suche ...」という単語が黒い文字で表示されます。黒い文字(変数)内をクリックすると、グレーの文字(プレースホルダ)に変わり、プレースホルダに何かを入力すると消えます。私はそれが多分あまりにも詳細ですが、それでもダブルクリックが必要な理由を知りたいのですが、それに単語を入力できるようになります^^ありがとうございました! – Passenger

関連する問題