我使用X-editable插件进行就地编辑,使用Twitter Bootstrap,jQuery UI或纯jQuery
HTML :
<a class="editable-text" data-value="0123456789">0123456789</a>
的JavaScript :
$(document).ready(function () {
$.fn.editable.defaults.mode = 'inline';
$.fn.editableform.buttons = '<button type="submit">OK</button>';
$('.editable-text').editable();
});
它可以像桌面浏览器一样工作,但它会为Safari移动浏览器显示两次文本。任何人都可以建议修复Safari移动设备中的正确显示吗?
的jsfiddle :
http://jsfiddle.net/MalyutinS/7bp4ttmv/11/
答案 0 :(得分:2)
<强>&LT;更新&GT; 强>
解决这个问题的正式和正确的方法,一旦他意识到发生了什么,发现谢尔盖Malyutin是通过meta标签禁用移动Safari的电话号码链接:
<meta name="format-detection" content="telephone=no">
<强>&LT; /更新&GT; 强>
您正在演示的示例输入恰好包含10位数字。移动Safari将这10个数字识别为电话号码,并将其更改为与X-editable插件的操作异步的链接。从某种意义上说,您可以想象在同一输入上有两个不同的插件同时运行,并产生两个相邻的输出。
如果您点击该链接,系统会向您提供选项&#34;取消&#34;和#34;电话&#34;在&#34;电话号码下面#34; 0123456789。
要解决移动Safari的电话号码激活引入的问题,我建议您根据需要插入一个不可见的零宽度空间(Unicode实体​
),以防止任何10个字符串数字。当然,数据值将保持不变。
<a class="editable-text" data-value="0123456789">01234​56789</a>