我正在尝试使用渐变,其顶部和底部颜色根据光标位置而改变。使用$(document.body).css('background','rgb('+rgb.join(',')+')');
更改背景时,下面的功能有效,但我似乎无法使用渐变。下面的代码是我在Firefox中测试的设置。我将在我目前尝试使用每个浏览器的选项进行设置时更新代码。
http://coreytegeler.com/justin/
$(window).load(function(){
var $win = $(window),
w = 0,h = 0,
top = [],
bottom = [],
getWidth = function() {
w = $win.width();
h = $win.height();
};
$win.resize(getWidth).mousemove(function(e) {
top = [
Math.round(e.pageX/w * 255),
Math.round(e.pageY/h * 255),
150
];
bottom = [
Math.round(e.pageX/h * 255),
Math.round(e.pageY/w * 255),
150
];
$(document.body).css('background: -moz-linear-gradient(top, ('+top.join(',')+'), ('+bottom.join(',')+'))');
}).resize();
});
答案 0 :(得分:2)
一个问题是您使用的是javascript .css
方法错误。它需要两个参数或一个对象。所以它应该是:
$(document.body).css('background', '-moz-linear-gradient(top, rgb('+top.join(',')+'), rgb('+bottom.join(',')+'))');
或
$(document.body).css({background : '-moz-linear-gradient(top, rgb('+top.join(',')+'), rgb('+bottom.join(',')+'))'});
除此之外,您的代码看起来非常正确。