にできるChromeの警告後に解雇ではなく、ここではテキストボックスにin jsfiddle.ブラーイベントFirefoxとIE
1.After変更テキストがコードにある、警告のポップアップが表示され、[OK]をクリックし、[ぼかしイベントが発生しますテキストが変更されます。これはFirefoxとIEで動作しますが、Chromeではblurイベントが発生しないため、テキストは変更されません。どうして?
2.好奇心が強いものを観察します。テキストボックスのテキストを変更したり、他のアプリ(またはCtrl + Tの新しいタブ)に切り替えると、アラートポップアップが表示され、[OK]をクリックすると、Chromeでブラーイベントが発生します。テキストボックスのisFocusは、警告の前であってもぼかし関数であってもfalseです。テキストボックスに既にフォーカスが失われている場合、なぜそれはまったく発射ですか?
$(document).ready(function() {
$("#id1").val('Original Text');
$("#id1").blur(function() {
console.log('When blur fire: Input has focus: ' + $("#id1").is(":focus"));
actionBlur(jQuery(this));
});
});
function actionBlur($field) {
$field.val("Blur fired");
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<input id="id1" property="prop1" onchange="scriptAlert();" />
<script>
var isFocus;
function scriptAlert() {
isFocus = $("#id1").is(":focus");
console.log('Before alert: Input has focus: ' + $("#id1").is(":focus"));
alert('input has Focus: ' + $("#id1").is(":focus")); console.log('After alert: Input has focus: ' + $("#id1").is(":focus"));
}
</script>
ありがとうございました。一定。しかしChromeはまだ動作していません(バージョン:51.0.2704.106 m)。 Firefoxは正常に実行されます。奇妙な。 – greencomet90
OK、最初の部分は、テキストを変更すると、Chromeで警告されますか? –
うわー、それはChromeで警告します。しかし、[OK]をクリックしてポップアップをオフにした後、テキストボックスのテキストは変更されません。 (Firefoxでは、テキストは関数呼び出しによってblurイベントによって変更されます) – greencomet90