【发布时间】:2017-04-04 11:01:31
【问题描述】:
好的,所以我的目标是首先计算页面顶部和查看者所在页面部分之间的距离,所以基本上查看者看不到的页面顶部部分,以像素为单位的距离此区域(仅垂直)。
这样当他们进入另一个页面时:
"函数codeAddress() {$("html, body").animate({ scrollTop: "scrollTop" });}"
,将它们向下滚动的像素数量与它们在前一个 html 页面上向下滚动的像素量相同,并且该距离将存储在“scrollTop”变量中。
但由于它不起作用,我想测试“scrollTop”变量会给出什么值,而 alert(scrollTop) 给了我值“0”。但是当我使用 alert(...) ,并且在 ... 我给出 exactly '=' "scrollTop = ..." 背后的内容时,我得到了正确的值。所以事实证明,变量的值变成了 0,而 '=' 符号后面的所有值都不等于 0。
我不知道我没有看到什么,有人有什么线索吗?
这是我的整个页面的 JSFiddle,中间有一个按钮,在我的页面中它给出了第二个警报的“0”值,而在 Fiddle 中它给出的“未定义”仍然很奇怪..
https://jsfiddle.net/56sb4gty/
<script type="text/javascript">
function codeAddress() {$("html, body").animate({ scrollTop: "scrollTop" });}
window.onload = codeAddress;
var scrollTop = $('body, html').scrollTop()
function myFunction() {
alert($('body, html').scrollTop())
alert(scrollTop) };
</script>
<script src="scrollTop.js"></script>
【问题讨论】:
-
"scrollTop"可能不是动画到的有效值? -
这是可能的,但是为什么 alert(scrolltop) 和 alert($('body, html').scrollTop()) 给出不同的值,这让我很困惑。自: var scrollTop = $('body, html').scrollTop() ..
标签: javascript html variables alert scrolltop