我想在用户切换“平板电脑模式”时动态更改为触摸友好的布局,如果他们关闭平板电脑模式,则切换回我们的“桌面”布局.
这需要(1)在JavaScript中检测平板电脑模式(2)检测平板电脑模式的开/关变化.
我更喜欢纯JavaScript和DOM(不是jQuery,Modernizr等).
原因:我们有一个高密度(类似桌面)的用户界面,我们不能轻易改变.我希望在“平板电脑模式”下添加间距以使触控更友好.这与Windows 10任务栏在平板电脑模式下在图标之间添加额外填充相同(可能其他Windows 10应用程序会以这种方式运行?!)
编辑:我做了一些视口研究,因为看起来零宽度滚动条是检测平板电脑模式(或Metro)的技巧. http://pastebin.com/ExPX7JgL
平板电脑模式:Edge中的滚动条宽度为0.
不是平板电脑模式:Edge中的滚动条宽度不为零.
不是平板电脑模式:Edge中的滚动条宽度不为零.
使用纯JavaScript代码here.
这适用于Windows 10上的Edge(IE12),但不适用于Internet Explorer 11.在模式之间切换时可能会发生调整大小事件,但不可靠(如果页面小于窗口,我认为不会.)我很感兴趣听听是否有人发现使其100%可靠的技术).
请注意,由于其他原因(iOS,Android,Windows Phone,Safari OSX或if -ms-overflow-style:none,以及其他原因)滚动条宽度可以为零. Modernizr 3具有hiddenscrollbar功能检测功能,可检测是否使用了零宽度滚动条.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。