8

Focusout イベントの後、クリック イベントはトリガーされません。

私のデザインは、

<textarea id="txt"></textarea>
<input type="button" id="btnClick" value="Submit" />

jQuery、

$(document).ready(function () {
var field = $("#txt");
var btn = $("#btnClick");
field.on("focusin", f1);
field.on("focusout", f2);
btn.on("click", f3);

function f1() {
    field.removeClass("c1").addClass("c2");
}

function f2() {
    field.removeClass("c2").addClass("c1");
}

function f3() {
    alert('hi');
}
});

スタイル、

.c1 { height:40px; }
.c2 { height:250px;}

また、ここに Fiddle を添付しました。

4

3 に答える 3

23

これは、ボタンの位置が移動するため、クリックをトリガーするのに十分な時間がないためです。マウスを押したままマウスをボタンに移動してクリックを放すと、クリックが機能することがわかります。クリックが機能することがわかります。

btn.on('mousedown',f3);フォーカスアウト時にボタンが移動しないように、ボタンを使用または配置します

デモ マウスダウン

DEMOボタンの配置

クリックが機能する方法は、要素にマウスダウンし、マウスアップすることです。これは、クリックをトリガーするときです

于 2013-09-17T11:34:20.680 に答える