text标签 onblur="alert()" 文本框失去光标的时候触发alert();但是当鼠标选中此text,然后鼠标离开整个浏览器窗口(比如点击下桌面),这样触发alert()事件 现在问题来了:鼠标回到浏览器点击弹出的"确定"按钮后,弹窗继续弹出...怎么搞?
不会出现这个情况的,贴出你的代码。
补充
我能回答就肯定试过的啦下面代码就没有问题
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <input type="text" onblur="alert();"> </body> </html>
已经测试IE11 、 Firefox 、Chrome
所描述的情况确实存在,想了下原因:
切回去后窗口失去了焦点,再回来的时候,文本框又自动获取了焦点 所以一直继续,从而不断触发。
这种问题实际在使用的时候出现情况应该比较少。 一种解决方案是在窗口失去焦点的时候让文本框也失去焦点如下:
已测试问题解决
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <input type="text" onblur="alert();"> <script> window.onblur=function(){ document.getElementsByTagName('input')[0].blur(); } </script> </body> </html>
刚刚试了下,确实有这个现象,但是把alert改成其他的(比如console.log)就不会出现反复触发 blur 的情况,一般情况下应该也不会用到alert,所以这个问题应该也不会有很大影响。至于为什么出现这种情况,我也不清楚~~
不会出现这个情况的,贴出你的代码。
补充
我能回答就肯定试过的啦下面代码就没有问题
已经测试IE11 、 Firefox 、Chrome
补充
所描述的情况确实存在,想了下原因:
切回去后窗口失去了焦点,再回来的时候,文本框又自动获取了焦点 所以一直继续,从而不断触发。
这种问题实际在使用的时候出现情况应该比较少。 一种解决方案是在窗口失去焦点的时候让文本框也失去焦点如下:
已测试问题解决
刚刚试了下,确实有这个现象,但是把alert改成其他的(比如console.log)就不会出现反复触发 blur 的情况,一般情况下应该也不会用到alert,所以这个问题应该也不会有很大影响。至于为什么出现这种情况,我也不清楚~~