在加载和调整大小时使用 window 高度变量的单击函数
Click function with window height variable on load and resize
我有一个简单的点击功能,可以将页面滚动到某个点。该点需要是高度的 1/2 加上 650px。我下面的代码在加载时完美运行:
$(document).ready(function(){
var scroll = $(window).innerHeight()*.5+650;
$('a#start').click(function () {
$('html,body').animate({scrollTop: scroll }, 1500, "easeOutCirc");
return false;
});
});
问题是它不会在 window 调整大小时重新计算高度。我尝试了以下无济于事:
$(window).resize(function(){
var scroll = $(window).innerHeight()*.5+650;
$('a#start').click(function () {
$('html,body').animate({scrollTop: scroll }, 1500, "easeOutCirc");
return false;
});
});
提前感谢您的任何建议!
为什么要在调整大小处理程序中声明点击事件?
在点击函数中计算高度即可。
$(document).ready(function(){
$('a#start').click(function () {
var wh=$(window).innerHeight(), scroll = wh*.5+650;
$('html,body').stop().animate({scrollTop: scroll }, 1500, "easeOutCirc");
return false;
});
});
尝试
$(document).resize and not $(window).resize
我有一个简单的点击功能,可以将页面滚动到某个点。该点需要是高度的 1/2 加上 650px。我下面的代码在加载时完美运行:
$(document).ready(function(){
var scroll = $(window).innerHeight()*.5+650;
$('a#start').click(function () {
$('html,body').animate({scrollTop: scroll }, 1500, "easeOutCirc");
return false;
});
});
问题是它不会在 window 调整大小时重新计算高度。我尝试了以下无济于事:
$(window).resize(function(){
var scroll = $(window).innerHeight()*.5+650;
$('a#start').click(function () {
$('html,body').animate({scrollTop: scroll }, 1500, "easeOutCirc");
return false;
});
});
提前感谢您的任何建议!
为什么要在调整大小处理程序中声明点击事件?
在点击函数中计算高度即可。
$(document).ready(function(){
$('a#start').click(function () {
var wh=$(window).innerHeight(), scroll = wh*.5+650;
$('html,body').stop().animate({scrollTop: scroll }, 1500, "easeOutCirc");
return false;
});
});
尝试
$(document).resize and not $(window).resize