我想用Jquery为body标记设置一个最大字符数。我试过下面的脚本,但不起作用。然而,它在div标记上起作用。有人知道是否可以将最大字符设置为身体标签吗演示jsfiddle
<html>
<head>
<script>
jQuery(document).ready(function($) {
$('body').on('keydown', function(event) {
if($(this).text().length === 10 && event.keyCode != 8) {
event.preventDefault();
}
});
});
</script>
<style>
body {
height: 100px;
width: 300px;
border: 1px solid grey;
outline: 0;
}
</style>
</head>
<body contenteditable="true"></body>
</html>
这是因为jsfiddle在body
中添加了一些东西,而.text()
会拾取它们,因此.length
不是您所期望的。
在事件处理程序中尝试console.log($(this).text())
,您就会明白我的意思。
在干净的页面上运行您的代码,如果没有将东西注入其中,应该可以工作。