javascript - $(document).innerHeight() 和 $(window).innerHeight() 不适用于移动设备

标签 javascript jquery mobile scroll

当用户滚动到底部时,我正在尝试执行某些操作。

这段代码可以在桌面上运行。

但是在我的 Android 4.3 Google Chrome 和 iPhone Safari 上,它没有将 if 语句解析为 true,但我可以确认它确实到达了那里。

我使用的是 jQuery 1.11.0,但我也尝试过使用 1.7.2。

$(window).scroll(function() {
    if ($(window).scrollTop() === $(document).innerHeight() - $(window).innerHeight()) {
        //Do Stuff
    }
});

此外,我还添加了:

<meta name="viewport" content="width=device-width, initial-scale=1.0">

最佳答案

我认为问题可能是移动浏览器在视口(viewport)移动时不运行任何 JavaScript。

这意味着除非您完全在文档高度上停止滚动(没有弹性底部的东西),否则不太可能等于相同的高度。

尝试将 === 更改为 >= 并查看是否有影响。

关于javascript - $(document).innerHeight() 和 $(window).innerHeight() 不适用于移动设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21363328/

相关文章:

javascript - highcharts xaxis 导航器不显示

javascript - 如何为 html 集合中的每个元素添加事件监听器?

javascript - 使用 Promises 发出 ajax 请求时如何访问 http header ?

javascript - 使鼠标悬停时的 img src 更改适应触摸屏设备

css - 响应式 CSS iOS 7 不工作

javascript - 输入键问题

javascript - jQuery 子激活父单击事件

javascript - 使用 Ionic Framework 点击/单击无法在移动设备上运行的选择元素

php - 为什么 Ajax 将 'UNDEFINED' 数据传递给 MySql?

javascript - Jquery - 如何从字符串中提取和计算数值