我是javascript的新手,我正在制作一个Web应用程序。基本上它是一个使用html5的简单备忘录。
我的HTML代码:
<ul contenteditable="true">
<br/>abc<br/>
def<br/>
ghi<br/>
</ul>
和我的javascript:
window.onkeydown = backspace;
function backspace() {
var key = event.keyCode || event.charCode;
var lis = document.getElementsByTagName("li");
for (var i = 0; i < lis.length; i++) {
var li = lis[i];
if (li.innerHTML == "<br>") {
if (!li.id) {
li.id = "ttt";
if (key == 8) {
return false;
}
}
}
}
return true;
}
我尝试了基本的退格返回false但问题是如果li
标记为空,则其他li
标记即使有字符也不会接受退格事件。
答案 0 :(得分:0)
$('input').keydown(function(e){
if(e.keyCode == 8) {
e.preventDefault();
alert('we arent allowing deletes');
}
});
答案 1 :(得分:0)
您可以为文档按键添加事件处理程序 然后检查退格键和你想要的元素类型'LI'
$(document).keypress(function(e) {
var key = e.which;
if (key == 8 && e.target.attributes[0].value != "text") {
return false;
}
});
您可以使用所需元素的类型替换文本