
想象一下,创建一个可以重新组合IDE的HTML页面.左侧是资源管理器,右侧是使用contenteditable字段的编辑字段.
这是一个简化的结构:
<div ID="left"><ul> <li>hello</li> <li>hello</li> <li>hello</li> <li>hello</li> <li>hello</li> <li>hello</li></ul></div><div ID="content"> <div ID="editable" contenteditable="true"> edit here... </div></div>
想象一下,左侧场地有数百个你好.我使用iScroll4库将这些元素转换为滚动系统.使用触摸滚动效果很好.
这是问题所在.假设我刷新页面,开始编辑,添加或删除文本.然后我轻d左侧看另一个元素.如果我然后触摸编辑字段我无法添加文本.
我在内容字段上面添加了一个链接元素
<a href="JavaScript:touched()">touch me</a>
触摸的功能什么都不做,但触摸链接会以某种方式更改内容,以便我可以再次编辑可信任的字段.我的第一印象是,这可能是一个焦点问题.所以我追踪了各种元素的重点.没有.我甚至为踢球设定了焦点,也没有发生任何事情.
我想,也许是丢失的关键序列?我添加了一个document.onkey事件,并且正在捕获所有关键事件.我踢的时候添加一个方法调用来将显式焦点设置为可编辑字段.没有.
在这一点上,我完全陷入困境,因为我不知道为什么满足于无法使用.让用户重新点击链接以允许焦点是IMO一个愚蠢的想法.有人遇到过这个问题吗?有人有解决方案吗?
谢谢
解决方法 您可以尝试使用CSS指针事件,以便在触摸contenteditable元素时不会滚动:*[contenteditable=true]{ pointer-events:none;} 我不知道这是否适用于触摸屏,但值得一试.
总结以上是内存溢出为你收集整理的javascript – 在另一个div上使用touch时,contenteditable不起作用全部内容,希望文章能够帮你解决javascript – 在另一个div上使用touch时,contenteditable不起作用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)