清理在Safari中粘贴的文本无效

3

我已经删除了旧帖子。

我有一个contentEditable div。如果你从Word复制到它,就不应该有任何格式。我在Chrome、FF、IE中都实现了这个功能。IE不支持ContentEditable div中的格式吗?看起来是这样的...太好了。只是在IE8中进行了测试。

基本上,我在onPaste事件中获取我的div的内容。删除它的内容。然后,粘贴事件将任何东西粘贴到我的div中。由于我刚刚清空了它,所以我可以再次获取div的内容并得到粘贴的文本。我还保存了我的光标/选择,最后将所有内容重新组合在一起。这不是很复杂。

Safari在第一部分失败了。如果empty()被触发或者html()或其他任何清理div的方法,那么粘贴就不会成功。

这里有一个演示:http://jsfiddle.net/nK4eJ/9/

有什么想法为什么在Safari中无法工作,以及如何使其能够工作吗?


你能否用 JS Fiddle演示 重现你的问题? - David Thomas
这与以下内容相关吗:https://dev59.com/FGw05IYBdhLWcg3w_W1N? - JMax
David Thomas: 我试过了,但在 JsFiddle 上不起作用。JMax: 我看过那个线程,但出于某种原因我没有仔细看它。无论如何,他是在 onClick 上 alert 整个东西。但我想要它在我的编辑器中,这就是粘贴的目的。为什么每个人都 alert 这些东西呢?我很奇怪。如何正确地返回它,以便将其添加到我的编辑器中? - xotix
.text() 只获取文本,对吧?所以基本上它已经被清理了。但是我该如何返回它呢? - xotix
请参见https://dev59.com/RXI95IYBdhLWcg3wvgl9#2177059。 - Tim Down
这只是为了ctrl v。我只希望它像在stackoverflow上的评论中那样完成。 - xotix
2个回答

0

0

你可以使用Niceditor。它轻便且易于使用! 在这里查看contentEditable div演示here


我已经添加了一些功能,我喜欢自己构建它。学习并知道我得到了什么。 :) 我现在使用粘贴事件和检测ctrl v完成了它,应该足够了。 - xotix

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接