【发布时间】:2017-03-29 02:37:15
【问题描述】:
当$(window).width() == 768 时,会执行alert()。但在Chrome DevTools 中,这实际上发生在宽度为 786 像素时。为什么以及如何让我的 JS 在 768px 而不是 786 处触发?
【问题讨论】:
-
之所以是因为width()不包括滚动条。发生这种情况时你有滚动条吗?
当$(window).width() == 768 时,会执行alert()。但在Chrome DevTools 中,这实际上发生在宽度为 786 像素时。为什么以及如何让我的 JS 在 768px 而不是 786 处触发?
【问题讨论】:
你试过简单吗:
window.innerWidth
或为了与旧版浏览器向后兼容
window.innerWidth
|| document.documentElement.clientWidth
|| document.body.clientWidth
【讨论】:
document.body.clientWidth 为我工作,但你如何决定使用哪一个?