如果我在iframe中创建一个具有contenteditable true的div,如果你双击它就会变得不起作用。焦点仍然在iframe中,你可以看到光标,但它不响应keydown
有没有人知道如何克服这个问题?
修改
我已经实现了一个dojo编辑器。如果您在ipad中打开this link,您将看到上述问题。
答案 0 :(得分:1)
尝试让一个可信的div在iframe中工作是一个复杂的层次,如果你想让它在像Dojo编辑器这样的特定WYSIWYG编辑器中工作,那就更难了,因为有很多JavaScript影响交互。这将有助于在您的问题中更好地解释参数。
您是否使用浏览器调试器(如Firebug)查看点击时发生的情况?
其他SO question and answer about contenteditable div vs iframe很有用。
最后,如果您使用的是iOS Safari,请确保您使用的是Safari 5.0或更高版本,因为可信属性为only recently supported on that browser。
修改强> 由于您使用的是iOS 6,因此当您单击可编辑的div时,您应该使用the iOS Safari JavaScript Debugger让您更清楚地知道发生了什么。如果您能找到更具体的错误消息,请更新我们。
答案 1 :(得分:1)
您使用的是哪种操作系统?您应该确保使用的是OS 5.0或更高版本。根据{{3}}。写道:
iOS 5.0及更高版本支持HTML contenteditable
属性。在早期版本中,使用样式化的contenteditable
元素替换用于在样式元素中启用文本输入的textarea
。在Safari中,您可以使用CSS自定义textarea
元素的外观。如有必要,您甚至可以通过将-webkit-appearance
设置为无来禁用textarea元素上任何特定于平台的内置样式。
因此,如果您使用的是旧操作系统版本,则可以使用textarea
元素而不是contenteditable
。然后,保证您的应用程序也能正常运行。
PS。你可以使用你的IPAD继续(Apple's Technical Notes) and Safari Web Content Guide,试试它如何与textarea
一起使用。这可能是你的一个例子。
希望有所帮助。