我会先说我是初学者,我的代码可能杂乱无章和/或不连贯,但无论如何我都会发布它,希望能发现这些错误。
我已经搜索了几天的答案和解决方案,我还在这里找到了有人问完全相同问题的主题:http: //goo.gl/BwLzp(被认为是模糊的)所以我会尽可能彻底我知道该怎么做。
到目前为止,我所拥有的是一些教程和摘录的组合:
概念:(会预先加载大量图片并设置为背景图片。理论上,每滚动一个整数(scrollTop),背景图片就会相应变化。)
所有的图像基本上都命名为:imgname1.jpg、imgname2.jpg、imgname3.jpg 等。因此“imgname”与 scrollTop 编号配对。
这是我仅关于滚动(而不是预加载)的内容:
$(function getPos() {
var Pos = $(window).scrollTop(); // "Pos = scrollTop and is added onto imgname
return Pos;
});
$(function() {
$(window).scroll(function() { //Defines that this function will be triggered as the scrollbar is moving
var image_url = 'http://www.examplehost.com/imgname' + Pos + '.jpg'
if (getPos()>1) { //If the vertical position of scrollbar is above 1 display imgname + Pos + .jpg (ex: imgname30.jpg) and add to url
$("body").css('background-image', image_url);
}
else { //If the vertical position of scrollbar is at 1 display start image
$("body").css('background-image', url("http://www.examplehost.com/imgname/0.jpg");
}
});
}); //function ends
我不知道这是多么混乱,是的,我会复习基础知识,因为这在我看来是合乎逻辑的,但我敢肯定这是完全错误的。但是对于这个项目,我的知识只限制了我猜测/想知道以下内容:
- 当函数结束时,我的“}”后面是否需要逗号。前任: },
- 一切是否正确打开和关闭。
- 这正是我的 js 文件的外观,如果出现函数调用不正确的问题,我不会感到惊讶。
- 也代替 if (getPos()>1) 我想使用 if (getPos()>=1)
可能有助于/进一步澄清的额外信息,目标是图像位置保持静止,并且每个滚动增量都会接管一个新的“框架”。最终,我会居中+保持图像全屏,例如:http ://www.powersmart.ca/
感谢您阅读本文,如果我违反了规则,或者这个问题/困境已在我无法找到的地方得到更详细的解决,我深表歉意。
也就是说,想法?