Стирание текста в поле поиска
Привет всем. Я тут новичок. Нужна помощь.
Сейчас я на сайте делаю поиск. Вот изображение: ![]() Вот код: <div id="search"> <div id="sterka" onclick="document.getElementById('searchbox').value = ''; $('#sterka').remove(); $('#searchbox').focus();"></div> <form method="get" id="searchform" action="?"> <div id="searchformobv"> <font class="textpoisk"><input type="text" maxlength="50" value="Поиск по каталогу..." onfocus="if (this.value == 'Поиск по каталогу...') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Поиск по каталогу...';}" name="s" id="searchbox"/></font> <input type="submit" class="submitbutton" value="" /> </div> </form> </div> Как видите по коду, при клике по крестику - он исчезает и фокус оказывается в поле. Задача: Нужно чтоб крестик изначально был скрыт, а появлялся только тогда, когда в поле введён какой либо текст(конечно, не равный "Поиск по каталогу..."). Очень жду ответов в своей первой теме на данном форуме :) |
Цитата:
<style> #close { width: 20px; height: 20px; } .on { background: url('http://javascript.ru/forum/images/smilies/smile.gif') no-repeat center center; } </style> <script> function Go(Obj) { if (Obj.value!='') { document.getElementById('close').className='on' } } </script> <div id='close'></div> <input type='text' onkeyup='Go(this)' /> |
ksa, Ваш пример упрощён настолько, что даже картинки после стирание текста - не исчезает.
Я понял какой путь Вы предлагаете, но не знаю можно ли идя по нему, качественно решить всю поставленную задачу. Хотя..., может и можно. Сёдня попробую. Вообще, хочу с использованием Jquery всё сделать. |
Цитата:
Цитата:
|
Вот работающий код, который я смог написать:
<script type="text/javascript"> function Gosterka(Obj) { if (Obj.value!='' & Obj.value!='Поиск по каталогу...') { document.getElementById('sterka').style.display='block'; } else {document.getElementById('sterka').style.display='none'; } } </script> <style> #sterka {display:none; ... } </style> <div id="search"> <div id="sterka" onclick="document.getElementById('searchbox').value = ''; document.getElementById('sterka').style.display='none'; $('#searchbox').focus();"></div> <form method="get" id="searchform" action="<?php if(is_home()) { echo "?";} else { bloginfo('home');} ?> "> <div id="searchformobv"> <font class="textpoisk"><input type="text" maxlength="50" onkeyup='Gosterka(this)' value="<?php if ($s) { echo "$s";} else { echo "Поиск по каталогу...";} ?>" onfocus="if (this.value == 'Поиск по каталогу...') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Поиск по каталогу...';}" name="s" id="searchbox"/></font> <input type="submit" class="submitbutton" value="" /> </div> </form> </div> Вообще, сайт на движке Wrodpress. В переменную $s заносится слово, которое ищется. Но об этом не стоит говорить, т.к. это нас не касается. 1. Что вы думаете о моём коде? 2. Есть проблема: Когда вбиваешь слово и ищешь его на сайте - страница обновляется и крестик то исчезает. Понятно почему, но не понятно как с этим справится.:( 3.Очень хочу, чтоб кто-нибудь помог переделать мой код на код с максимально полным использованием JQuery. 4. И очень хотелось бы сделать перемещение курсора после нажатия на крестик. ![]() Новички атакуют! :write: |
Цитата:
Как вариант иметь два класса ОН и ОФФ... При перезагрузке страницы анализоровать какой из классов "дать крестику"... Ну и таки дать ему нужный. :) |
ksa, извините что так долго не отвечал. У меня щас сессия просто(
function Vosterka() { var var1 = document.getElementById("searchbox").value; if (var1!='Поиск по каталогу...') { document.getElementById('sterka').style.display='block'; } } <script type="text/javascript"> function Gosterka(Obj) { if (Obj.value!='' & Obj.value!='Поиск по каталогу...') { document.getElementById('sterka').style.display='block'; } else {document.getElementById('sterka').style.display='none'; } } </script> <style> #sterka {display:none; ... } </style> ... <body onLoad="Vosterka()"> ... <div id="search"> <div id="sterka" onclick="document.getElementById('searchbox').value = ''; document.getElementById('sterka').style.display='none'; $('#searchbox').focus();"></div> <form method="get" id="searchform" action="<?php if(is_home()) { echo "?";} else { bloginfo('home');} ?> "> <div id="searchformobv"> <font class="textpoisk"><input type="text" maxlength="50" onkeyup='Gosterka(this)' value="<?php if ($s) { echo "$s";} else { echo "Поиск по каталогу...";} ?>" onfocus="if (this.value == 'Поиск по каталогу...') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Поиск по каталогу...';}" name="s" id="searchbox"/></font> <input type="submit" class="submitbutton" value="" /> </div> </form> </div> Осталось добавить код перемещения курсора на 30px вправа после нажатия на крестик) ![]() А как его переместить? Что-то я в Инете ничего нормального про это не нашёл почитать( |
Цитата:
Цитата:
|
Часовой пояс GMT +3, время: 22:11. |