text標(biāo)簽 onblur="alert()"
文本框失去光標(biāo)的時(shí)候觸發(fā)alert();
但是當(dāng)鼠標(biāo)選中此text,然后鼠標(biāo)離開(kāi)整個(gè)瀏覽器窗口(比如點(diǎn)擊下桌面),這樣觸發(fā)alert()事件
現(xiàn)在問(wèn)題來(lái)了:
鼠標(biāo)回到瀏覽器點(diǎn)擊彈出的"確定"按鈕后,彈窗繼續(xù)彈出...
怎么搞?
不會(huì)出現(xiàn)這個(gè)情況的,貼出你的代碼。
補(bǔ)充
我能回答就肯定試過(guò)的啦下面代碼就沒(méi)有問(wèn)題
<!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>
已經(jīng)測(cè)試IE11 、 Firefox 、Chrome
補(bǔ)充
所描述的情況確實(shí)存在,想了下原因:
切回去后窗口失去了焦點(diǎn),再回來(lái)的時(shí)候,文本框又自動(dòng)獲取了焦點(diǎn) 所以一直繼續(xù),從而不斷觸發(fā)。
這種問(wèn)題實(shí)際在使用的時(shí)候出現(xiàn)情況應(yīng)該比較少。 一種解決方案是在窗口失去焦點(diǎn)的時(shí)候讓文本框也失去焦點(diǎn)如下:
已測(cè)試問(wèn)題解決
<!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>
剛剛試了下,確實(shí)有這個(gè)現(xiàn)象,但是把a(bǔ)lert改成其他的(比如console.log)就不會(huì)出現(xiàn)反復(fù)觸發(fā) blur 的情況,一般情況下應(yīng)該也不會(huì)用到alert,所以這個(gè)問(wèn)題應(yīng)該也不會(huì)有很大影響。至于為什么出現(xiàn)這種情況,我也不清楚~~
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號(hào)
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號(hào)