我正在使用最新版本的Flat UI Pro 1.3.2(
http://designmodo.com/flat/),并且似乎有一个问题,jQuery插件flatui-radiocheck v0.1.0和iOS设备.
加载演示页面时可以看到问题:http://designmodo.github.io/Flat-UI/
使用“单选按钮”进入该部分,然后单击“收音机已开”和“收音机关闭”两个按钮来切换单选按钮.在所有主要的桌面浏览器(IE,FF,Safari(Windows))中,这种切换(在视觉上切换状态以及DOM中的无线电元素的状态)都可以正常工作.
但是,在iOS上有Safari的问题(我在iPhone 4s,8.4.1上运行最新的iOS版本):点击两个单选按钮不再切换他们的状态!
它似乎与iOS(可能是新版本)的移动Safari相关,因为它在桌面浏览器上运行正常.
任何想法或帮助如何调试这个错误是非常感谢!
解决方法
我使用Flat UI Free(2.2.2)并发现了同样的问题.
我不知道为什么它是发生,但已经能够通过稍微调整放大看板插件来解决它.
在flat-ui.js里面,我更改了radiocheck插件定义:
// Adding 'nohover' class for mobile devices var mobile = /mobile|tablet|phone|ip(ad|od)|android|silk|webos/i.test(global.navigator.userAgent); if (mobile === true) { $this.parent().hover(function () { $this.addClass('nohover'); },function () { $this.removeClass('nohover'); }); }
至:
// Adding 'nohover' class for mobile devices if (/iPhone|iPod|iPad/i.test(global.navigator.userAgent)) { //fix for ios $this.addClass('nohover'); } else { var mobile = /mobile|tablet|phone|ip(ad|od)|android|silk|webos/i.test(global.navigator.userAgent); if (mobile === true) { $this.parent().hover(function () { $this.addClass('nohover'); },function () { $this.removeClass('nohover'); }); } }
我不使用复选框,所以我不知道他们是否会受到这种变化的影响.