Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   почему onclick срабатывает один раз (https://javascript.ru/forum/events/29670-pochemu-onclick-srabatyvaet-odin-raz.html)

neWjs 06.07.2012 18:02

а если это не вариант?
и я не могу так сделать?
addEventListener тоже не помогает

Deff 06.07.2012 18:12

neWjs,
Могу сказать что ошибка в function cls(){ - если её закоммитить клики не ограничиваются

neWjs 06.07.2012 18:14

понял почему не работает, по каким то магическим причинам значение value не меняется(когда его поменял в инпуте.. )и поэтому условие не пропускает дальше
if(search_ === prev_val || search_ == '')return;

neWjs 07.07.2012 22:50

не могу решить проблему с инпутом при повторном вводе значение инпута не меняется
вот тут код http://learn.javascript.ru/play/1xWJJ
помогите..=(

Deff 07.07.2012 22:58

neWjs,
Объясните вообще задачу - может сделаем покороче ? (особенно если если разрешите jQuery
1. Зачем это нужно ?
2. По какому действию всплывает форма
3. Что вводим и какими рамками контента ограничиваемcя (теги id и классы
4. Когда форма закрывается ?

neWjs 07.07.2012 23:05

скрипт ищет фразу написанную в форму по странице после нажатия кнопки поиск, найденные фраза обварачивает в спан как ctrl+f.
проблема в том что первый раз все работает ок но на второй раз не меняется value инпута.
мне просто нужно сделать что бы форма работала , остальное уже не моя задача .
jQuery не нужно, просто помогите понять что за бред с инпутом (скрипт работает нормально)

Deff 07.07.2012 23:23

neWjs,

Пробуйте убрать эту строку (красным - она у Вас дублирует и переменная становиться внутренней
Цитата:

function cl (){
search_ = inp_s.value;

neWjs 07.07.2012 23:27

работает, но что такого в этой строке?

Deff 07.07.2012 23:27

setTimeout(return_back,0);
		     setTimeout(cls,0);

			prev_val = search_;
			
		   }*/
		   
		  function cl (){
*!*
			search_ = inp_s.value;
*/!*
			alert(inp_s.value);
		   if(search_ === prev_val || search_ == '')return;
		    
			setTimeout(return_back,0);
		     setTimeout(cls,0);

Deff 07.07.2012 23:29

Цитата:

Сообщение от neWjs
работает, но что такого в этой строке?

Она у Вас уже задана тут
next_anc.onclick = function(){fin.call(this,'next');}
	  prev_anc.onclick = function(){fin.call(this,'prev');}*/
	   
	
	   /*inp_bt.onclick = function(){
*!*
		   search_ = inp_s.value;
*/!*


Часовой пояс GMT +3, время: 10:14.