javascript 如何触发此事件?

3qpi33ja  于 2023-08-02  发布在  Java
关注(0)|答案(3)|浏览(113)

我有两个密码输入,每个都是通过密码键盘输入的,但没有键盘输入。键盘是一个3 x 3的表格,带有按钮1到9。

当客户端鼠标光标离开键盘表时,如何触发事件?

我想做的是,如果用户单击某个东西,然后离开键盘,验证并确认密码输入。
我尝试将onmouseout和div Package 器添加到表中,但这并不是我所期望的,因为当光标悬停在按钮上时,事件会触发。

<table onmouseout="ValidatorEnable()">

字符串

mm5n2pyu

mm5n2pyu1#

你需要在这方面做一些工作。首先,在文档的就绪事件中获取包含键盘的表格或div的大小和位置。然后在该容器上的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:-我已经用Firebug在FF 3.5中测试过了。Chrome崩溃了!

xriantvc

xriantvc2#

通常情况下,开发人员不会在鼠标离开表时验证输入,而是在输入模糊时,或者您可以在单击按钮时触发ValidatorEnable()。祝您好运!

bwleehnv

bwleehnv3#

最简单的实现方法可能是使“背景”div显示为与视口一样大,z索引低于键盘,但高于其他任何东西,并设置“背景”封面的onMouseOver事件来进行验证。巧合的是,你可以使用一个onclick事件来关闭键盘和验证。

相关问题