0

我想让它在一个独立的 HTML 文件中工作:http: //jsfiddle.net/J8XaX/2/

我的脚本是:

var divs = $('.fademe');
$(window).on('scroll', function() {
   var st = $(this).scrollTop();
   divs.css({ 'opacity' : (1 - st/130) });
});

我已经尝试过这些包括,但它们都不起作用:

<script type='text/javascript' src='http://code.jquery.com/jquery-1.7.1.js'></script>
<script type='text/javascript' src='http://code.jquery.com/jquery-1.7.1.min.js'></script>
<script src="http://code.jquery.com/jquery-latest.js"></script>

有什么建议么?

编辑:它被包装了。我的 HTML 中的脚本是:

<script type='text/javascript'>
$(document).ready(function(){
    var divs = $('.fademe');
    $(window).on('scroll', function() {
   var st = $(this).scrollTop();
   divs.css({ 'opacity' : (1 - st/700) });
});
</script>

它在 jsFiddle 中有效,但当我尝试将其作为自己的 HTML 页面查看时则无效

4

3 回答 3

7

将您的代码包装在

$(document).ready(function() {

});
于 2013-03-15T14:53:43.820 回答
2

.on()函数是在 jQuery 1.7 中添加的,而该.css()函数是在 jQuery 1.0 中添加的,因此这三个文件中的任何一个都将包含所有必要的函数;前两个是同一个文件,一个刚刚被压缩(缩小 - 因此文件名的“.min”部分)。

但是,您的代码可能执行得太早 - 在构造 DOM 之前 - 因此无法选择元素。DOM ready使用事件处理程序延迟该代码的执行:

$(document).ready(function() {
    // your code
});
于 2013-03-15T14:55:46.133 回答
0

您正在错误地访问 div。
如果您要将 jquery 函数应用于您选择的变量,则必须这样做。

$(divs).css({ 'opacity' : (1 - st/130) });
于 2013-03-15T14:54:11.697 回答