JavaScript:找到文本换行在div中发生的位置

时间:2016-10-01 09:34:20

标签: javascript css contenteditable

我想知道网络浏览器在给定的div中包装文本的位置。

这是一个使用contenteditable的WYSIWYG编辑器。用户在那里写文本,并根据可编辑字段的宽度,字体和其他因素,它包装在某些位置。我想知道这些发生在哪里。

我只能想到非常糟糕的解决方案(例如,在每个角色周围插入一个span,在这些跨度上循环,获取他们的offsetTop属性,并在它发生变化时做出记录)。有没有更好/标准的方法来做到这一点?

2 个答案:

答案 0 :(得分:1)

我做了一个google并在堆栈溢出时发现了这个问题,不确定这是你之后的问题,但请仔细阅读。它已经很老了。

Finding line-wraps

答案 1 :(得分:0)

document.getElementById("body").onchange = function() {myFunction()};

      function myFunction() {
            //Your eval script to log where changes took place
      }

document.getElementById('body').addEventListener('change', myFunction());