我启用了contenteditable
的div。当按下回车键时,它会插入br
或当所有内容都被清空时(通过删除里面的内容),它也会插入br
。
有没有办法控制在任何一种情况下插入的内容?例如,我想在按下回车键时插入一个div。此外,当我删除内部的所有内容时,我想要包含一个div(它更像是占位符)。
对于第二部分(即:像占位符一样的div),我知道我可以使用如下的css:
div.example[contenteditable]:empty::before {
content: "Acts like a placeholder";
}
但似乎当我删除里面的所有内容时,br
被插入,我无法摆脱它。
谢谢。
答案 0 :(得分:1)
您可以通过检查内容长度来处理Enter键事件并在插入或删除时包含div
检查以下代码段
$(document).ready(function() {
});
jQuery('#editDiv').on("keypress", function(e) {
if (e.keyCode == 13) {
$(this).append("<div>new div</div>")
}
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div contenteditable="true" id="editDiv">
hello
</div>
&#13;
您也可以查看此链接 Jquery Event : Detect changes to the html/text of a div
希望有所帮助