私のプロジェクトでは、使用している jQuery のバージョンを 1.4.2 から 1.7.2 に更新しました。<tr>
要素のクリック イベント ハンドラーを処理しているときに、予期しない動作が見られるようになりました。
複数のサイトには、最初の列にラジオ ボタンがあるテーブルが含まれています。したがって、HTMLは次のようになります
<table>
<tbody>
<tr onclick="selectOnClick(this)">
<td><input type="radio" .... /></td>
......
</tr>
...
別のjsファイルには、JS関数の定義があります
function selectOnClick(row) {
$(row).children('td').children('input :first').click();
$(row).children('td').children('input :first').click();
$(row).children('td').children('input :first').click();
}
したがって、テーブルの行内の要素がクリックされるたびに、最初の入力要素がクリックされます。関数内で同じステートメントを 3 回呼び出す必要があった理由はわかりませんが、それには理由がありました。
私の問題は、jQuery の更新 (v.1.4.2 --> 1.7.2) の後、行をマウスで 1 回クリックすると、1 つではなく数百のイベントが生成されることです。ブラウザはそれらを処理するために非常にビジーであるため、まったく反応していないように見えます。関数をclick()
一度だけ呼び出すように変更しても、変更されません。
誰かがその効果の理由を教えてもらえますか.