gpt4 book ai didi

jQuery:随机化每个div的鼠标速度

转载 作者:行者123 更新时间:2023-12-01 07:16:35 25 4
gpt4 key购买 nike

我有一个设置,其中 div 在屏幕上跟随光标(当前是 2 个 div,但这将是内容管理的,因此很快就会有几十个),理想情况下每个 div 以不同的速度跟随光标(最大速度共 50 份)。
jsfiddle:http://jsfiddle.net/neal_fletcher/nEKgN/
jQuery:

$( document ).ready(function() {
var mouseX = 0, mouseY = 0;
$(window).mousemove(function(e){
mouseX = Math.min(e.pageX);
mouseY = Math.min(e.pageY);
});

var follower = $(".stuck");
var xp = 0, yp = 0;
var loop = setInterval(function(){
// higher is slower
xp += (mouseX - xp) / 30;
yp += (mouseY - yp) / 30;
follower.css({left:xp, top:yp});

}, 30);
});

$( document ).ready(function() {
var mouseX = 0, mouseY = 0;
$(window).mousemove(function(e){
mouseX = Math.min(e.pageX);
mouseY = Math.min(e.pageY);
});

var follower = $(".stuck-2");
var xp = 0, yp = 0;
var loop = setInterval(function(){
// higher is slower
xp += (mouseX - xp) / 20;
yp += (mouseY - yp) / 20;
follower.css({left:xp, top:yp});

}, 30);
});

在上面的例子中,我必须给每个 div 一个不同的类(或 ID)来为每个 div 设置不同的速度,但就像我说的,因为这将是内容管理的,这是不可能的,理想情况下我想要所有的 div 都具有相同的等级,并随机化每个 div 的速度,最大速度为 50。不知道这是否可能?任何建议将不胜感激!

最佳答案

使用.each迭代关注者并为每个关注者分配一个“跳转”值:

$(document).ready(function () {
var mouseX = 0,
mouseY = 0;
$(window).mousemove(function (e) {
mouseX = Math.min(e.pageX);
mouseY = Math.min(e.pageY);
});

var followers = $(".stuck");

followers.each(function () {
var follower = $(this),
jump = 1 + (Math.random() * 50),
xp = 0,
yp = 0;

var loop = setInterval(function () {
// higher is slower
xp += (mouseX - xp) / jump;
yp += (mouseY - yp) / jump;
follower.css({
left: xp,
top: yp
});
}, 30);
});

});

这是一个演示:http://jsfiddle.net/Nxdm7/

关于jQuery:随机化每个div的鼠标速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18241910/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com