我认为这是一个微不足道的错误,但我无法解决它。
我有一个简单的脚本可以在em
中找到页面的宽度,然后是if
语句,为了这个问题,它只包含console.log
:< / p>
$(document).ready(function() {
var windowWidth = '';
function getWidth() {
windowWidth = $(window).width() / parseFloat($("body").css("font-size"));
}
window.addEventListener("load", getWidth);
if (windowWidth < 40) {
console.log("whaaaat");
}
});
我的body
标记的font-size
为16px
。这不应该评估为真,但确实如此。当我在控制台中调用windowWidth
变量时,它返回大于40.我疯了吗?
答案 0 :(得分:1)
您的代码有几个问题。
40
进行比较,因为在比较它时尚未填充windowWidth
变量。 load
语句中使用$(document).ready
事件,这是不必要的。无论如何,在页面加载后会触发$(document).ready
。这是一个固定版本:
$(document).ready(function() {
var windowWidth = $(window).width() / parseFloat($("body").css("font-size"));
console.log(windowWidth);
if (windowWidth < 40)
console.log("whaaaat");
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;