jQueryを使って、Googleカスタム検索をカスタマイズしました。
検索窓にフォーカスしているときはメッセージは消す、フォーカスしていないときは、メッセージを表示するようにしました。
デフォルトのコードはこんな感じで取得できるると思います。
<form action="https://www.google.co.jp/cse" id="cse-search-box">
<div>
<input type="hidden" name="cx" value="*****" />
<input type="hidden" name="ie" value="UTF-8" />
<input type="text" name="q" size="20" />
<input type="submit" name="sa" value="検索" />
</div>
</form>
<script type="text/javascript" src="https://www.google.co.jp/coop/cse/brand?form=cse-search-box&lang=ja"></script>
ここで、type=“text"に操作するためのclass を追加します。
<input type="text" class="focus" name="q" size="20" />
jQueryのコードはこんな感じで書きます。
$(function(){
$(".focus").val("サイト内検索");
$(".focus").focus(function(){
if(this.value == "サイト内検索"){
$(this).val("").css("color","#f39");
}
});
$(".focus").blur(function(){
if(this.value == ""){
$(this).val("サイト内検索").css("color","#969696");
}
});
});
最後に、デフォルトでの表示を灰色にするために、CSSに色の宣言をします。
.focus{color: #969696}
jQueryでサクッとかけました。jQuery、便利ですねー。