相关疑难解决方法(0)

检测设备是否为iOS

我想知道是否可以检测浏览器是否在iOS上运行,类似于使用Modernizr进行特征检测的方式(尽管这显然是设备检测而不是功能检测).

通常我更喜欢功能检测,但我需要找出一个设备是否是iOS,因为他们根据这个问题处理视频的方式YouTube API无法使用iPad/iPhone /非Flash设备

javascript browser ios browser-feature-detection

378
推荐指数
9
解决办法
33万
查看次数

电话:用于文本输入的数字键盘

有没有办法强制数字键盘出现在手机上<input type="text">?我刚刚意识到<input type="number">在HTML5中是针对"浮点数",因此它不适用于信用卡号,邮政编码等.

我想模拟数字键盘功能<input type="number">,对于采用浮点数以外的数值的输入.也许还有另一种合适的input类型吗?

keyboard android numbers html-input ios

164
推荐指数
8
解决办法
21万
查看次数

使用Modernizr检测IE的正确方法?

这可能是一个愚蠢的问题,但我想使用Modernizr JS库来检测某些浏览器属性,以确定要显示或不显示的内容.

我有一个名为Pano2VR的应用程序,它输出HTML5和SWF.我需要HTML5 for iOS设备用户.

但是,IE根本不会呈现此"HTML5"输出.似乎他们的输出使用CSS3 3D变换和WebGL,IE9中显然不支持一个或多个.

因此,对于那些用户,我需要显示Flash版本.我打算使用IFRAME并通过Modernizr脚本传递SRC或document.write出正确的IFRAME代码,具体取决于浏览器.

所有这些都导致我如何使用Modernizr来检测IE或IE?或者检测CSS 3d变换?

或者还有另一种方法吗?

html5 cross-browser modernizr

82
推荐指数
5
解决办法
14万
查看次数

使用自定义/货币模式强制iOS数字键盘

在使用自定义模式作为输入类型时,是否有可能强制iOS设备显示数字键盘?

我的输入模式:

<input id="price" class="numeric" pattern="\d+((\.|,)\d{1,2})?" name="price" 
title="" data-mini="true" data-clear-btn="true" autocomplete="off" autofocus />
Run Code Online (Sandbox Code Playgroud)

我想键入一个类似'14 .99'的货币值,并在iOS设备上显示一个可以访问数字的键盘

<input type='number' />
<input pattern='[0-9]*' />
<input pattern='[\d]*' />
Run Code Online (Sandbox Code Playgroud)

在添加小数符号时都缺少小数符号和/或没有作为数字验证.另一种方法可能是在正确的位置创建小数点的javascript函数,例如按此顺序按1-> 2-> 9-> 9创建on keypress()0.01-> 0.12-> 1.29-> 12.99,但这需要输入字段type='text'- >显而易见的问题是在聚焦输入字段时显示文本键盘.

我该如何解决这个问题?

编辑

环境:

  • JQM 1.3.2
  • jquery 1.8.2

javascript keyboard ios jquery-mobile

17
推荐指数
2
解决办法
2万
查看次数

使用输入文本在iPhone中显示数字键盘

请注意,使用input type="number"可以显示如下数字键盘:

在此输入图像描述

是否可以用来input type="text"显示相同的数字键盘?我并不想用显示的数字键盘pattern="\d*",因为它是可能的值将包含一个小数位.

我想用的原因input type="text",而不是input type="number"是,我不能回来的价值,如果我输入一个数场非数字.例如,如果我输入ABC,它将自动变为空.在我看来,使用input type="text"这种控制会更容易.

html5 jquery-mobile cordova

13
推荐指数
4
解决办法
2万
查看次数

适用于移动设备的HTML <input type ="number">的最佳设置

我一直在阅读许多其他问题,例如[1] [2] [3],但问题仍然存在.

我需要找到"最干净"的方式来input获得移动设备的HTML 并尊重所有这三个规则:

  1. 主要适用于数字,整数或浮点数
  2. 显示移动设备的数字小键盘,适用于Android版Chrome和适用于iOS的Safari,没有奇怪的额外按键

    在此输入图像描述

  3. 完全尊重HTML5规则(由W3验证器测试)




我试过了什么?

我一直在讨论这些解决方案,这两个主题都没有累积地尊重上述三条规则.

解决方案1

<input type="text" pattern="\d*" />
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

此解决方案尽管在iOS中工作并且完成了由w3验证器测试的HTML规则,但在Chrome Android中提供了带有QWERTY键盘的完整键盘.


解决方案2

<input type="number" pattern="\d*" />
Run Code Online (Sandbox Code Playgroud)

此解决方案适用于iOS和Android Chrome系统,显示两个系统上的数字键盘,但它会抛出HTML验证错误

仅当输入类型为电子邮件,密码,搜索,电话,文本或URL时,才允许使用属性模式.


解决方案3

<input type="number" />
Run Code Online (Sandbox Code Playgroud)

此解决方案通过HTML测试,在Chrome上显示不错,但在iOS键盘上显示了几个不需要的密钥

在此输入图像描述


解决方案4

我看到许多开发人员使用此解决方案

<input type="tel" />
Run Code Online (Sandbox Code Playgroud)

但是经过Android Chrome测试,它不允许使用点符号(.),并且键有字母,这是多余的.

chrome输入类型=

html-input mobile-safari numeric-keypad android-keypad iphone-keypad

8
推荐指数
2
解决办法
4889
查看次数

Html 输入类型=“电话”与输入模式=“电话”

知道两者都被用作移动浏览器的提示,我找不到关于 using<input type="tel">和之间的区别的真正文档<input inputmode="tel">。所以

  • 有什么不同?
  • 哪个更好用?
  • 如果相同为什么要重复?

MDN文档建议使用该类型。但目前还不清楚解释。

html input

6
推荐指数
1
解决办法
2872
查看次数