【发布时间】:2016-01-03 11:45:00
【问题描述】:
这是一个简单的事实。
这是Change variable values on window.resize 的一个人,他解决了窗口调整大小更新问题。
var windowHeight = $(window).height();
$(window).resize(function(){
windowHeight = $(window).height(); // get new height after change
});
但是当我尝试以这种方式这样做时它不起作用:
radius = Math.round( (($(window).width()) * 0.1302) / Math.tan( Math.PI / itemLength ) );
$(window).resize(function(){
radius = Math.round( (($(window).width()) * 0.1302) / Math.tan( Math.PI / itemLength ) );
});
计算按预期工作,但它从不刷新调整大小的计算。
你能帮我弄清楚这是为什么吗?
【问题讨论】:
-
您的代码不完整且不可重现。
itemLength未定义。此外,您在resize()函数中设置radius,但不要在任何地方应用它。我们所能做的只是猜测。 -
你的代码也有问题。我怀疑它甚至是第一次运行。
$(window).width()不需要px参数。默认情况下,它已经在px中返回窗口的宽度。请查收:api.jquery.com/width -
嗨马里奥!正如问题中所说。计算是正确的。所以请不要担心ItemLength。但是,如果您能进一步解释为什么我不在任何地方应用 resize(),我会很高兴?
-
您的代码无法运行。
$(window).width('px')返回一个没有数字的对象,因此您的计算是NaN。如果你说“计算是正确的”也没关系。如果您向我们提供我们无法测试的错误和不完整的代码,我们所能做的就是猜测。请阅读stackoverflow.com/help/mcve -
我发布了更多代码。代码最终运行良好。唯一的问题是它只执行一次计算!
标签: javascript jquery math gsap