为了这个效果,在网上找了基于 jQuery-Mobiscroll 的插件,可是这个插件在移动端会出现蓝色光标不断闪烁的问题,之后又找了其他几个相思的插件都会在 ios 上出现蓝色光标闪烁,想问下有什么办法可以解决这个问题

2015-11-29 16:05:58 +08:00
 zebulon

http://ww2.sinaimg.cn/mw690/ae3ee2f3gw1eyhwwk3ytjj20b70jndgz.jpg

3905 次点击
所在节点    jQuery
17 条回复
zebulon
2015-11-29 16:12:08 +08:00
怎么才能发图片啊
FuryBean
2015-11-29 16:22:43 +08:00
在弹出这个日期框的时候,执行一下 document.activeElement.blur();
marvinwilliam
2015-11-29 17:38:53 +08:00
editable 设为 false 可以不?那个光标是因为可编辑所以出现的
zebulon
2015-11-29 18:12:52 +08:00
@marvinwilliam 还是不行,光标依然会出现
zebulon
2015-11-29 18:13:15 +08:00
@FuryBean 这样光标确实没了,不过日期也没了
Librazy
2015-11-29 18:37:02 +08:00
我的第一反应是设置光标颜色和背景色相同。
Librazy
2015-11-29 18:41:23 +08:00
或者在 CSS 里面引用一个颜色相同的 cur 文件?
banri
2015-11-29 18:49:40 +08:00
换个思路,避开这个问题:

模拟一个假的输入框,把真的输入框隐藏
点击真的输入框触发假输入框的 focus 事件
然后监听真输入框的 change 事件,将里面的值复制给模拟的假输入框
banri
2015-11-29 18:50:09 +08:00
@banri 说反了,点击假的 触发 真的
zebulon
2015-11-29 19:10:41 +08:00
@Librazy 这样的话输入框里面的文字也会与背景色一样了
zebulon
2015-11-29 19:10:50 +08:00
@banri 好的,我试试
zebulon
2015-11-29 19:19:40 +08:00
@banri 用了这个办法算是解决了这个问题,谢谢 啊
zebulon
2015-11-29 19:31:54 +08:00
@zebulon 但是我把真的那个给隐藏后就不能触发真的那个的事件了
domty
2015-11-29 20:17:37 +08:00
样子看起来像 mobiscroll 啊
我以前好像做过类似的
domty
2015-11-29 20:19:16 +08:00
mobiscroll 的做法貌似是把整个 input text 做成 disable 的了,调调背景颜色让它看上去像正常可用的 input 就行
zebulon
2015-11-29 21:44:54 +08:00
@domty 对,就是 mobiscroll,可是 input 的蓝色光标闪烁会到最上面来,如图所示
ljcarsenal
2015-11-30 23:28:26 +08:00
Input 设置个 readonly 属性

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/239810

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX