![](/img/trans.png)
[英]jQuery change() event - Not with bind(), live(), keyup+keydown+keypress, nothing
[英]jQuery bind event on dynamic element for focus, keypress, keydown, keyup didn't work
<div id="t1" contenteditable="true" style="width: 400px; height: 200px;">
<ul>
<li style="list-style-type: none;">Apple</li>
</ul>
</div> <span id="dd"></span>
<script>
$(function () {
event.returnValue = false;
$('#t1>ul').on("click", 'li', function () {
utility.test(this);
});
});
var utility = {
test: function (elem) {
var $this = $(elem);
$('#dd').html($this.html());
if (event.preventDefault) event.preventDefault();
}
}
上面的代碼可以正常工作,但是如果我將綁定事件從click更改為keydown,如下所示
$('#t1>ul').on("keydown", 'li', function () {
那就沒用了 我正在使用jQuery 1.9.1版,並嘗試將.live用於1.8.3版,但仍然無法正常工作。
非常感謝。
為什么不只是最初選擇li?
$('#t1 li').on("keydown", function () {
alert('You are typing');
utility.test(this);
});
具有contenteditable
標志的標簽將捕獲並發出keydown
事件,而不是其中的內容。 簡而言之,您的<li>
不會發出keydown
事件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.