table中 可编辑属性
div 等标签直接修改内容 添加 contentEditable="true"
鼠标点击时可直接修改
实时监听div的内容修改 demo—code
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>监听 div 内容变化</title>
<script src="./js/jquery-1.11.0.min.js"></script>
<script>
$(document).ready(function() {
// 选择类名为 'dev' 的 div
var targetNode = document.querySelector('.dev');
// 观察器的配置(需要观察什么变动)
var config = { attributes: true, childList: true, subtree: true, characterData: true };
// 当观察到变动时执行的回调函数
var callback = function(mutationsList, observer) {
// 遍历所有变动
for(var mutation of mutationsList) {
if (mutation.type === 'characterData') {
// 如果变动类型是字符数据变动,则可能是内容变化
console.log('div 内容变化了:', mutation.target.data);
// 在这里执行你想要的操作
}
}
};
// 创建一个观察器实例并传入回调函数
var observer = new MutationObserver(callback);
// 以上述配置开始观察目标节点
observer.observe(targetNode, config);
// 之后,可停止观察
// observer.disconnect();
});
</script>
</head>
<body>
<div class="dev" contentEditable="true" style="width: 200px; height: 100px; border: 1px solid black;">
编辑此div的内容来触发事件
</div>
</body>
</html>