在内容可编辑的元素中粘贴多行文本,使每一行始终位于其自己的div中,可以通过以下步骤实现:
以下是一个示例代码:
<!DOCTYPE html>
<html>
<head>
<style>
.line {
border: 1px solid #ccc;
padding: 5px;
margin-bottom: 5px;
}
</style>
</head>
<body>
<div id="container"></div>
<script>
var container = document.getElementById('container');
var editableElement = document.createElement('div');
editableElement.contentEditable = true;
container.appendChild(editableElement);
editableElement.addEventListener('paste', function(e) {
e.preventDefault();
var text = e.clipboardData.getData('text/plain');
var lines = text.split('\n');
lines.forEach(function(line) {
var div = document.createElement('div');
div.className = 'line';
div.textContent = line;
container.appendChild(div);
});
});
</script>
</body>
</html>
这段代码创建了一个父容器div,并在其中创建了一个内容可编辑的div。当在内容可编辑的div中粘贴多行文本时,会触发粘贴事件,将每一行文本分割成数组,并为每一行创建一个div,最后将这些div添加到父容器中。每个div都有一个类名为"line",并且具有一些基本的样式,如边框、内边距和外边距。
这种方法可以确保每一行始终位于其自己的div中,方便对每一行文本进行样式和操作。
领取专属 10元无门槛券
手把手带您无忧上云