Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使JQuery具有响应性?_Javascript_Android_Jquery_Ios_Responsive Design - Fatal编程技术网

Javascript 如何使JQuery具有响应性?

Javascript 如何使JQuery具有响应性?,javascript,android,jquery,ios,responsive-design,Javascript,Android,Jquery,Ios,Responsive Design,情况就是这样: 我需要让JQuery对我的应用程序做出响应,比如让谷歌地图可以拖动:在pc上为true,在平板电脑和手机上为false,这是我第一次面对这种争论。 我正在做一些测试 这就是我们所做的: 我试图研究最好的方法,最好的方法(即正常工作)似乎可以在以下答案中找到: 在特定情况下,这是代码: var isMobile = navigator.userAgent.match(/android|webos|iphone|ipad|ipod|blackberry|iemobile|oper

情况就是这样: 我需要让JQuery对我的应用程序做出响应,比如让谷歌地图可以拖动:在pc上为true,在平板电脑和手机上为false,这是我第一次面对这种争论。 我正在做一些测试

这就是我们所做的: 我试图研究最好的方法,最好的方法(即正常工作)似乎可以在以下答案中找到:

在特定情况下,这是代码:

 var isMobile = navigator.userAgent.match(/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/); 

 if (isMobile) {
     alert('is not pc');
   }
 else {
     alert('is a pc');
   }
这是一个简单的测试:

其他解决方案成立: 我们也发现这种方法很有趣:

但奇怪的是,我的平板电脑三星Galaxy Tab 3的第一个解决方案不起作用


这就是问题所在:

 var isMobile = navigator.userAgent.match(/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/); 

 if (isMobile) {
     alert('is not pc');
   }
 else {
     alert('is a pc');
   }
使JQuery响应的最佳方法是检测navigator.userAgent.match

如果是,如何确保在列表中包含所有可能的设备? 例如,我知道最近刚刚发布了一款新的Firefox手机,我怎么能把它也包括进去呢?也许有一种包含所有不同可能性的列表

非常感谢!!
对不起,如果这是一个愚蠢的问题,是我知道这一点,在这一点上,只有堆栈溢出可以为我澄清这一点

用户代理检测的问题是,必须对其进行维护以覆盖当前设备。很难知道每个可能的设备和/或浏览器的用户代理。简言之,这是一种非常不可靠的检测移动设备的方法,也不是一种经得起未来考验的方法

目前,最受欢迎的检测移动设备并响应地使用javascript的方法之一是通过

在响应性javascript/jQuery方面,您应该特别关注Modernizr.mq特性

还值得注意的是,hasEvent功能对于检测触摸设备非常有用

代码示例:

// Tablet and larger (768px)
if (Modernizr.mq('(min-width: 48em)')) {
  // Code here..
}

// Laptop and up (960px)
if (Modernizr.mq('(min-width: 60em)')) {
  // Code here..
}

// Touch devices
if (Modernizr.hasEvent('gesturestart')) {
  // Code here...
}

用户代理检测的问题是,必须对其进行维护以覆盖当前设备。很难知道每个可能的设备和/或浏览器的用户代理。简言之,这是一种非常不可靠的检测移动设备的方法,也不是一种经得起未来考验的方法

目前,最受欢迎的检测移动设备并响应地使用javascript的方法之一是通过

在响应性javascript/jQuery方面,您应该特别关注Modernizr.mq特性

还值得注意的是,hasEvent功能对于检测触摸设备非常有用

代码示例:

// Tablet and larger (768px)
if (Modernizr.mq('(min-width: 48em)')) {
  // Code here..
}

// Laptop and up (960px)
if (Modernizr.mq('(min-width: 60em)')) {
  // Code here..
}

// Touch devices
if (Modernizr.hasEvent('gesturestart')) {
  // Code here...
}

你研究过CSS媒体查询吗?还有现代化?您应该检测功能而不是设备。您使用的正则表达式不应该有
i
标志吗?“我怎样才能确保在列表中包括所有可能的设备?”-根据定义,你不能包括所有可能的设备,因为创建浏览器(台式机或移动设备)的人可能会想到做各种奇怪的事情。我们不知道将来会发生什么…如果你在服务器端使用PHP,你可以考虑使用类。你看过CSS媒体查询了吗?还有现代化?您应该检测功能而不是设备。您使用的正则表达式不应该有
i
标志吗?“我怎样才能确保在列表中包括所有可能的设备?”-根据定义,你不能包括所有可能的设备,因为创建浏览器(台式机或移动设备)的人可能会想到做各种奇怪的事情。我们不知道将来会发生什么…如果你在服务器端使用PHP,你可以考虑使用类。谢谢@ FvSvunNETE回复!能否请您发布一个非常简单的示例,说明如何使用IF语句来检测它是否是pc机。事实上,现在便携式pc也支持触摸,自动排除事实,以检查设备是否支持触摸,对吗?如果你能发布正确的If声明,我会检查你的答案是否正确!谢谢大家!@我已经用密码更新了答案。我希望有帮助。正如评论中提到的,为功能而不是设备设计是很好的。我这样做的理由是,归根结底,你真的不知道你的用户将在哪一年使用什么设备。10年后你的设计还能用吗?谢谢@forsvunnet的回复!能否请您发布一个非常简单的示例,说明如何使用IF语句来检测它是否是pc机。事实上,现在便携式pc也支持触摸,自动排除事实,以检查设备是否支持触摸,对吗?如果你能发布正确的If声明,我会检查你的答案是否正确!谢谢大家!@我已经用密码更新了答案。我希望有帮助。正如评论中提到的,为功能而不是设备设计是很好的。我这样做的理由是,归根结底,你真的不知道你的用户将在哪一年使用什么设备。10年后你的设计还能用吗?