android 用webView作为编辑器 各种问题

摘要:
DOCTYPEHTML˃调调呵呵呵这是一段可编辑的段落。请试着编辑该文本。

1.首先我要说明一下为什么要写这个博客,因为公司最近需要一个自定义的编辑器,苦于没有思路在网上找了好久,看到了好多android实现的编辑器(其实也就那么几个并不多),公司需求和网页端同步共享创建的文档,需要用到html保存数据,然后我就被迫开始了编辑器之旅,这东西我觉得最大的难点就是要手机和网页端保持一致,手机并没有那么自由统一起来还是非常困难的,接下来我就说说我遇到的一些问题.

问题一 : 我要实现这个样子

android 用webView作为编辑器 各种问题第1张

红框的地方就是要实现的地方 这里是这样的:

<div id="editor"contentEditable="true">
    adfadf
    <span class="divcss5" >此DIV盒子左侧为1px实线蓝边框</span>
    adfadf
</div>

我这里用div红框模拟一下如下图:

android 用webView作为编辑器 各种问题第2张

然后问题就出来了,此时我们的目的是如果现在光标在上图的红色方框后面的话按下退格键需要删除整个div 而现在点击退格键删除的不是整个div而是div中的内容,这里我们想要的效果是删除红色的框子div,但现在如下图:

android 用webView作为编辑器 各种问题第3张

现在就比较尴尬了。

解决方法:

其实也很简单就是 把contenteditable="true"属性从div上拿掉移到body上 如果你想删的div不想像上图一样的话就在那个div上添加contenteditable="false" 就行了

<!DOCTYPE HTML>
<html>
<body contenteditable="true">
<div>
调调
<div contenteditable="false">
呵呵呵
</div>
这是一段可编辑的段落。请试着编辑该文本。
</div>
</body>
</html>

免责声明:文章转载自《android 用webView作为编辑器 各种问题》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Ubuntu18.04自动升级内核后降级oracle:重装操作系统后,如何利用原有oracle表空间文件还原数据库 挪威下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

[Notepad++]Notepad++怎么实现双视图/双窗口?

作为windows下非常优秀的开源代码编辑器,Notepad++是工程师必备代码编辑器。相比较之下,老一辈文本编辑器如ultraedit,editplus,就显得繁琐、冗余、疲惫。我使用过Notepad++后,再也没有过其他的编辑器了,原因很简单,Notepad++足够使用了,足够方便,足够省资源,看着足够舒服!! Notepad++也可以实现双视图/双窗...

android——处理Google play因WebView SSL Error Handler alerts被拒的问题

    最近app上线,由于上述问题,被google市场给拒了。 看到这个,点进Google help Center article,应该知道问题所在了。直接在项目里找到使用webview的地方。找到webviewClient ,看看你有没有处理onReceivedSslError方法。怎么处理的。是不是按照规范。MD,要忙了。直接贴代码 public...

mui框架(二)

1.底部导航切换界面 HTML部分: <nav class="mui-bar mui-bar-tab"> <a id="defaultTab" class="mui-tab-item mui-active" href="a.html"> <span class="mui-icon mui-icon-...

用GO语言开发editplus编辑器插件(附源码)

我要开发的插件功能极为简单,就是对用户选中的内容进行base64编码或解密工作. 其中所涉及的技术部分主要是GO语言程序开发和editplus插件配置的部分,首先我们来看一下GO语言代码的写法,如下: package mainimport ("encoding/base64""fmt""os")const (version string = "1.0")f...

LaTex 编辑器知多少

      LaTeX 的前端编辑器按照设计初衷可以分为两类: 专为编辑调试 LaTeX 而设计、通用代码编辑器。前者主要包括: WinEdt, TexWorks, TeXstudio 等;后者最著名的要数 Emacs (Vim) 和 Sublime Text 了。       1. WinEdt        这个应该是使用最广泛的一款编辑器了,主要由于...

C# PropertyGrid使用总结

1. 只有public的property能显示出来,可以通过BrowsableAttribute来控制是否显示,通过CategoryAttribute设置分类,通过DescriptionAttribute设置描述,Attribute可以加在Class上,也可以加在属性上,属性上的Attribute优先级更高; 2. enum会自动使用列表框表示; 3. 自...