2015-07-11 2 views
0

Этот код не работает в Firefox, но работает с IE и Chrome. Когда я нажимаю внутри текстового поля, он выполняет функции focusOut() и focusIn(). Ожидается ли такое поведение и рекомендуется ли синтаксис?Добавление событий JavaScript в HTML-ввод

<!doctype html> 
 

 
<html> 
 
    <head> 
 
    <title>Page of Cage</title> 
 
    <meta charset="UTF-8"> 
 
    <link rel="icon" href="mkx-logo.png" type="image/x-icon"> 
 
    <script type="text/javascript"> 
 
     function focusIn() { 
 
     alert("focus In!"); 
 
     }; 
 

 
     function focusOut() { 
 
     alert("focus OUT!"); 
 
     }; 
 
    </script> \t 
 
    </head> 
 
    <body> 
 
    <form> \t 
 
     Name:<input onfocus="focusIn()" onblur ="focusOut()" type="text" name="name"/> <br/> 
 
     <input type="submit" value ="submit"/> \t \t \t 
 
    </form> 
 
    </body> 
 
</html> \t

+0

Это должно работать во всех браузерах, так как все выглядит правильно для меня. –

+0

Предоставляет ли FF сообщение об ошибке в консоли? – nnnnnn

+0

без ошибок на консоли. Возможно, это логичная ошибка, когда одновременно отображаются функции focusIn и focusOut. – thinker

ответ

2

Заменить alert с console.log и смотреть консоли веб-браузера с помощью инструментов разработчика. Точно так же, как в комментариях сказано nnnnnn.

0

Вопрос: Почему код не работает?
A: onfocus уволен, когда фокус получен, и onblur уволен, когда фокус потерян. В вашем коде, когда вы фокусируетесь на текстовом поле, он генерирует onfocus, и в то же время генерируется alert box, и он потерял фокус. Итак, обе функции запущены.

Check out this Fiddle

Смежные вопросы