我试图通过使用指针在div
上的位置来复制jQuery Slider的效果。
我收到的范围来自0 to 500
,我想将其调整为0 to 1
opacity
是否有任何jQuery函数来调整这样的范围?
$('#old').mousemove( function(e){
var parentOffset = $(this).parent().offset();
var mouseX = e.pageX - parentOffset.left;
var mouseY = 500-(e.pageY - parentOffset.top);
$('#position').html(mouseX+" "+mouseY);
$('#old').css('opacity', '.'+mouseY);
});
'.'+mouseY
十进制就是为了得到一些结果。
答案 0 :(得分:4)
答案 1 :(得分:1)
是的,您可以简单地除以500.然后最大值为500 / 500 === 1
,最小值为0 / 500 === 0
。
答案 2 :(得分:1)
所以你想要的值百分比从0到500?
var x = mouseY / 500;
答案 3 :(得分:1)
只需将数字除以500
:
$('#old').css('opacity', mouseY/500);
(JavaScript中的所有数字都是浮点数 - 如果您担心整数截断,则不需要。)
答案 4 :(得分:0)
所以希望这是你的期望 更新了你的jsfiddle;)
$('#old').mousemove( function(e){
var parentOffset = $(this).parent().offset();
//mouseX = e.pageX;
//mouseY = e.pageY;
var mouseX = ((e.pageX - parentOffset.left) / $('#old').width());
var mouseY = ((e.pageY - parentOffset.top) / $('#old').height());
//mouseX = Math.round( mouseX * 10 ) / 10;
$('#position').html(mouseX+" "+mouseY);
$('#old').css('opacity', mouseY);
$('#new').css('opacity', mouseX);
});
$('#old').mouseout(function(){
$(this).animate({opacity: '1.0'}, 1000);
});