Я написал небольшую функцию javascript, которая проверяет наличие cookie-файлов при запуске onFocus в текстовом поле ввода формы.
Если файл cookie найден, появляется диалоговое окно с приветствием человека, возвращающегося на сайт.
Но в Chrome каждый раз, когда диалог закрывается, появляется новое. Я полагаю, это потому, что текстовое поле все еще технически «сфокусировано».
Но эта проблема не возникает в Firefox или IE9.
Я решил это в Chrome, добавив строки, которые я сейчас прокомментировал. Но я хотел бы знать, считается ли это поведение ошибкой или нормальным поведением, и если это нормально, то почему другие браузеры ведут себя по-разному?
Вот пример кода JavaScript:
//var checked = 0;
var checkIt = getCookie('cia_db');
function checkCookie() {
// if(checked == 0) {
if(checkIt == 'logged_in') {
alert('Welcome back to CIA headquarters.');
//return true;
}
//}
//checked++;
}
А вот HTML:
<form id="form1" name="form1" action="" method="get">
<input type="text" name="username" id="username" value="smeegle" size="15" onfocus="checkCookie();">
и т.д ...