DOMで追加した要素にイベントを持たせる javascript jquery

DOMで追加した要素に.clickなどでイベントを持たせようとしても発生してくれません。

↓こんな感じでjqueryで追加した要素に対して
$(‘tbody’).prepend(“~~追加する要素~~”);

こんな感じで指定しても反応しません。
$(‘~~追加した要素~~’).click(function() {})

こういう場合はこうすると動作してくれます。
$(‘~~追加した要素~~’).live(“click”,function(){})

この関数で指定できるイベントは、次の通りです:
click, dblclick, mousedown, mouseup, mousemove, mouseover, mouseout, keydown, keypress, keyup

現時点ではサポートしていないイベントは、次の通りです:
blur, focus, mouseenter, mouseleave, change, submit

liveは将来的に追加されるであろう要素などにもハンドラ登録してくれます。
サポートされていないイベントを使用したい場合は、liveQueryというライブラリーを使うと解決しそうです。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク