$(window).bind("scroll",function () {
var scrollTop = $(this).scrollTop();
var scrollHeight = $(document).height();
var windowHeight = $(this).height();
if (scrollTop + windowHeight >= scrollHeight) {
$("#two").slideDown("slow");
$(".frame").slideDown(1500);
$(".frame").css("height","560px");
$("#background").css("height","1200px");
}
}
然后出现了一个问题,因为我开发环境是我的笔记本电脑,所以是小屏,虽然没在大屏上测试过,但我分析一下代码,肯定会出现这样的问题:如果屏幕太大,无法出现滚动条,那么里面的事件是无法触发,#two的内容就无法显示出来。
这种情况,该怎么办?强行“扩大”初始的窗口吗?(我初始的窗口是900px;)
附一下网站demo: www.seventh77.com 密码:111111
5 个解决方案
#1
触发一下就好了,不管是否出现滚动条
$(window).bind("scroll",function () {
var scrollTop = $(this).scrollTop();
var scrollHeight = $(document).height();
var windowHeight = $(this).height();
if (scrollTop + windowHeight >= scrollHeight) {
$("#two").slideDown("slow");
$(".frame").slideDown(1500);
$(".frame").css("height","560px");
$("#background").css("height","1200px");
}
}) .trigger('scroll');
$(window).bind("scroll",function () {
var scrollTop = $(this).scrollTop();
var scrollHeight = $(document).height();
var windowHeight = $(this).height();
if (scrollTop + windowHeight >= scrollHeight) {
$("#two").slideDown("slow");
$(".frame").slideDown(1500);
$(".frame").css("height","560px");
$("#background").css("height","1200px");
}
}) .trigger('scroll');
#2
这样一打开网页就直接触发了,我是希望滚动时才触发。
#3
问题是你没有滚动条就无法触发了。。所以触发这个事件直接判断是否出现这种情况,如果出现就直接显示你的two。如果你想延后执行,可以用计时器setTime来延时触发
#4
问题是你没有滚动条就无法触发了。。所以触发这个事件直接判断是否出现这种情况,如果出现就直接显示你的two。如果你想延后执行,可以用计时器setTime来延时触发
哦,我懂了,之所以我打开网页就触发了,是我这边逻辑上有些问题。好的,谢谢了。
#5
问题是你没有滚动条就无法触发了。。所以触发这个事件直接判断是否出现这种情况,如果出现就直接显示你的two。如果你想延后执行,可以用计时器setTime来延时触发
再次感谢,这个问题已经解决了,想再问一个问题:一般大屏幕,网页窗口的最高高度是多少像素啊?
#1
触发一下就好了,不管是否出现滚动条
$(window).bind("scroll",function () {
var scrollTop = $(this).scrollTop();
var scrollHeight = $(document).height();
var windowHeight = $(this).height();
if (scrollTop + windowHeight >= scrollHeight) {
$("#two").slideDown("slow");
$(".frame").slideDown(1500);
$(".frame").css("height","560px");
$("#background").css("height","1200px");
}
}) .trigger('scroll');
$(window).bind("scroll",function () {
var scrollTop = $(this).scrollTop();
var scrollHeight = $(document).height();
var windowHeight = $(this).height();
if (scrollTop + windowHeight >= scrollHeight) {
$("#two").slideDown("slow");
$(".frame").slideDown(1500);
$(".frame").css("height","560px");
$("#background").css("height","1200px");
}
}) .trigger('scroll');
#2
触发一下就好了,不管是否出现滚动条
$(window).bind("scroll",function () {
var scrollTop = $(this).scrollTop();
var scrollHeight = $(document).height();
var windowHeight = $(this).height();
if (scrollTop + windowHeight >= scrollHeight) {
$("#two").slideDown("slow");
$(".frame").slideDown(1500);
$(".frame").css("height","560px");
$("#background").css("height","1200px");
}
}) .trigger('scroll');
这样一打开网页就直接触发了,我是希望滚动时才触发。
#3
触发一下就好了,不管是否出现滚动条
$(window).bind("scroll",function () {
var scrollTop = $(this).scrollTop();
var scrollHeight = $(document).height();
var windowHeight = $(this).height();
if (scrollTop + windowHeight >= scrollHeight) {
$("#two").slideDown("slow");
$(".frame").slideDown(1500);
$(".frame").css("height","560px");
$("#background").css("height","1200px");
}
}) .trigger('scroll');
这样一打开网页就直接触发了,我是希望滚动时才触发。
问题是你没有滚动条就无法触发了。。所以触发这个事件直接判断是否出现这种情况,如果出现就直接显示你的two。如果你想延后执行,可以用计时器setTime来延时触发
#4
问题是你没有滚动条就无法触发了。。所以触发这个事件直接判断是否出现这种情况,如果出现就直接显示你的two。如果你想延后执行,可以用计时器setTime来延时触发
哦,我懂了,之所以我打开网页就触发了,是我这边逻辑上有些问题。好的,谢谢了。
#5
问题是你没有滚动条就无法触发了。。所以触发这个事件直接判断是否出现这种情况,如果出现就直接显示你的two。如果你想延后执行,可以用计时器setTime来延时触发
再次感谢,这个问题已经解决了,想再问一个问题:一般大屏幕,网页窗口的最高高度是多少像素啊?