jQuery(window).height()不适用于移动浏览器

我有一个完整的页面幻灯片使用jQuery(窗口).height(),它在大多数浏览器上工作正常,但我在我的手机(Android浏览器和海豚)上检查了它,幻灯片显示不断增长,远远超出了视口。 这是我的代码:

var height = jQuery(window).height(); jQuery('.slide').each(function(index, element) { if(height > 600) jQuery(this).height(height); else jQuery(this).height(600); }); jQuery(window).on('resize orientationChanged', function() { jQuery('.slide').each(function(index, element) { if(height > 600) jQuery(this).height(height); else jQuery(this).height(600); }); }); 

什么可能导致它的想法?

谢谢。

所以在这个问题3年后问jquery窗口高度仍然无法在移动设备中工作,只需用javascript替换jquery,它对我有用。

替换jquery

 var bodyh = jQuery("body").height(); var windowh = jQuery(window).height(); 

用javascript

  var bodyh = document.body.clientHeight; var windowh = window.innerHeight; 

如果HTML文档没有DOCTYPE声明,则它不是有效的HTML。 如果未在窗口中指定doctype,则JQuery无法正确计算窗口高度/文档高度。

声明是向Web浏览器发送的有关页面中使用的HTML版本的说明。

因此,如果您尚未指定它,请将DOCTYPE声明添加到HTML页面并查看输出。

   //...  

html文档类型可能存在问题。 以下是移动设备的示例文档类型。 在代码中更改此内容并尝试。

    My Page name  

请参阅以下链接更多详情。 http://www.microsoft.com/en-GB/developers/articles/jquery-mobile-101