contenteditable兼容问题】的更多相关文章

正常情况下用contenteditable,IE下有兼容性问题需要将个别字母变成大写的contentEditable. 获取contenteditable的内容 对html进行处理 兼容 chrome.IE.Firefox var html = $(this).html();if(html){ var lineSign = html.indexOf('<div>'); if(html.indexOf('<p>') > -1){ lineSign = html.indexOf(…
var html = $(this).html();if(html){ var lineSign = html.indexOf('<div>'); if(html.indexOf('<p>') > -1){ lineSign = html.indexOf('<p>'); } if(lineSign !== 0){ if(lineSign > 0){ html = html.slice(0,lineSign); } $(this).prepend($('<…
一开始听说开发H5,以为就是做适配现代浏览器的移动网页,心想不用管IE了,欧也.到今天,发现当初too young too simple,兼容IE和兼容安卓与IOS,后者让你更抓狂.接下来数一下踩过的坑.主要分UI展示,键盘,输入框等等.解决bug最苦恼的问题不是没有解决方案,而是你没有找到真正的原因.再就是现象难以重现,每次都要发布代码,然后到手机app中去测试,模拟.这些地方会耗费大量的精力. 一.UI相关 1.安卓4.4以下不支持fixed布局. fixed布局的作用之一就是在手机键盘弹起…
关于钩子:http://www.cnblogs.com/aaronjs/p/3387906.html 本章的目的很简单,通过钩子函数更细节的了解浏览器差异与处理方案, 版本是2.0.3所以不兼容ie6.7.8,所以对应了钩子会少很多.. 总的来说钩子在.attr(), .prop(), .val() and .css() 四种操作中会涉及 属性操作的钩子 propFix propHooks attrHooks valHooks jQuery.propFix  中的对象 源码部分 1:保留值属性名…
处理浏览器兼容问题实际上不是jQuery的精髓,毕竟让技术员想方设法取弥补浏览器的过错从而使得代码乱七八糟不是个好事.一些特殊情况的处理,完全实在浪费浏览器的性能:突兀的兼容解决使得的代码看起来既不美观也也不能对前端技术有任何提升.但是不管怎么说,只要不同的浏览器存在,就有可能出现兼容性问题,我们还必须去解决.比较好的是jQuery提供了一些比较优雅的浏览器兼容方案. 在处理浏览器兼容问题的时候最没有技术含量的方式是if…else..分支判断.jQuery中用到很多处理兼容的方法:多用于普通兼容…
场景: <div id='content' contenteditable='true' > hello </div> <button id='caret'>设置光标位置</button> 需求:点击按钮,把插入符放到文本‘hello’的后面或前面,像这样 //后面 hello| //前面 |hello 并兼容主流浏览器 解决: function placeCaret(el, atStart) { el.focus(); if (typeof window.…
今天把之前分享的两篇博客<CSS3实现10种Loading效果>和 <CSS3实现8种Loading效果[二]>整理了一下.因为之前所分享的各种loading效果都只是做了webkit内核浏览器的兼容性而已,但初衷还是想做成PC端的效果,所以就统一把所有效果都收集起来,并兼容各主流浏览器.最重要的是,我为了方便分享给大家使用,做了一个简单的网页小工具,通过这个小工具,大家可以根据自己需要的loading效果直接获取相应的html和css代码.在线小工具地址为:http://www.…
前言 最近一段时间在做 H5 聊天项目,踩过其中一大坑:输入框获取焦点,软键盘弹起,要求输入框吸附(或顶)在输入法框上.需求很明确,看似很简单,其实不然.从实验过一些机型上看,发现主要存在以下问题: 在 Android 和 IOS 上,获知软键盘弹起和收起状态存在差异,且页面 webview表现不同. 在 IOS12 上,微信版本 v6.7.4 及以上,输入框获取焦点,键盘弹起,页面(webview)整体往上滚动,当键盘收起后,不回到原位,导致键盘原来所在位置是空白的. 在 IOS 上,使用第三…
在某些情况下,textarea是不够用的,我们还需要显示一些图标或者高亮元素,这就需要用富文本编辑器,而富文本编辑器本质上是HTML元素设置了contenteditable. 然后可能需要像input.textarea有placeholder的输入提示语,但contenteditable的元素,placeholder是没用的,需要另外办法. 例子: HTML: <div class="con" contenteditable="true"></di…
当使用文本编辑的时候,首先会使用 textarea ,但是,这个里面不能加入其它标签,也就是不能富文本化. 于是可以使用 contenteditable 就是给 div 加上该属性.就变得丰富起来.使用的时候,发现有两个问题. 1.placeholder 无法正常使用,解决办法,是加上一段css: .con:empty:before{ content: attr(placeholder); color:#bbb; } .con:focus:before{ content:none; } 2.复制…