gpt4 book ai didi

javascript - javascript 中 'if statement' 的前半部分仅触发一次

转载 作者:行者123 更新时间:2023-11-30 17:19:40 25 4
gpt4 key购买 nike

我有 if/else 语句,我正在使用它来调整背景视频的大小,尽管我遇到了一个错误,语句的前半部分 if(video.style.height <= window.innerHeight && fired == false)只在页面调整大小时触发一次...声明的后半部分,else然后部分将连续发射,没有错误。你们有什么理由可以看到吗?我是一个 JavaScript 菜鸟,如果有什么明显的地方,我很抱歉。

JS:

window.onresize = function() {
var fullWidth = window.innerWidth;
var fullHeight = window.innerHeight;

var video = document.getElementById("test");
var videoWidth = video.style.width;
var videoHeight = video.style.height;

console.log(videoHeight);
console.log(fullHeight);

var fired = false;

if(video.style.height <= window.innerHeight && fired == false) {
video.style.height = fullHeight + 'px';
var fullWidthAdjusted = fullHeight * 1.7777777;
video.style.width = fullWidthAdjusted + 'px';
console.log(videoWidth);
console.log("If statement working");
fired = true;
} else {
video.style.width = fullWidth + 'px';
var fullHeightAdjusted = fullWidth * .5625;
video.style.height = fullHeightAdjusted + 'px';
console.log("Wrong part of statement working");
fired = true;
}
};

最佳答案

我不知道它是否能解决您的问题,但是 element.style.height"1234px"window.innerHeight< 格式的字符串 是类似于 1234 的数字。

编辑:

尝试使用 parseInt(video.style.height, 10) 而不是 video.style.height

关于javascript - javascript 中 'if statement' 的前半部分仅触发一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25373469/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com