Как вызвать это событие? - PullRequest
0 голосов
/ 09 июля 2009

У меня есть два ввода пароля, каждый вводится с клавиатуры пароля, но нет ввода с клавиатуры. Клавиатура представляет собой таблицу 3 на 3 с кнопками от 1 до 9.

Как вызвать событие, когда курсор мыши клиента покидает таблицу клавиатуры?

Я хочу, чтобы пользователь щелкнул что-то, а затем покинул клавиатуру, подтвердил и подтвердил ввод пароля.

Я пытался добавить onmouseout и div wrapper в таблицу, но это было не то, что я ожидал, потому что, когда курсор находится над кнопкой, происходит событие.

<table onmouseout="ValidatorEnable()">

Спасибо.

Ответы [ 2 ]

1 голос
/ 09 июля 2009

Вам нужно поработать над этим. Прежде всего, по событию готовности документа определите размер и положение таблицы или элемента, содержащего клавиатуру. затем в событии mouseout для этого контейнера проверьте, находится ли текущий курсор за пределами контейнера.

<script type="text/javascript">
    var tp=0;//top
    var lft=0;//left
    var rht=0;//right
    var bot=0;//bottom
    function CheckBounds(x,y){
       return (x < tp || y < lft) || (x > rht || y > bot);
    }
</script>

<script type="text/javascript">
    $(document).ready(function(){
       tp=$("#tbl").position().top;
       lft=$("#tbl").position().left;
       rht=$("#tbl").width() + lft;
       bot=$("#tbl").height() + tp;

       $("#tbl").mouseout(function(e){
          if(CheckBounds(e.pageX, e.pageY)){
             //DO Validation here
          }
       });
    }):
</script>

PS: - Я проверил это в FF 3.5 с firebug. Хром разбился!

0 голосов
/ 09 июля 2009

Как обычно, разработчики не проверяют ввод при включении таблицы, но включают ввод или вы можете запустить ValidatorEnable () при нажатии кнопки. Наилучшие пожелания!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...