如何使用 jquery 移动鼠标时更改 div 中的图像源?

How can I change image source in a div on mouse move with jquery?

我正在尝试自学如何编码(尤其是网站)。我对 html 和 css 有很好的了解,目前正在学习 js。但我知道我需要社区的帮助才能取得进步!

我想知道如何实现每次鼠标移动时多次(按顺序)更改图像源的效果? 例如:http://next2nothi.ng/

经过几次搜索,我无法找到实现该目标的好的解决方案……

在此先感谢您的帮助!

这是一个简单的例子。因此,您需要有一个图像列表,当在特定 div 上触发鼠标移动事件时要显示这些图像,您可以从列表中随机选择一个图像并将其设置为 [=18] 的背景图像=]:

function SwapBackgroundImage(){
   var listOfImages = ['urlToimage1','urlToImage2', 'and etc'];    // so have your array
    $('#myDiv').on('mousemove',function(){
          // i am picking the first image here, but you can google how to pick a random element in an array and use that
         $(this).css('background-image', 'url(' + listOfImages[0]+ ')');
    });

}

<div id="myDiv"></div>

就是这样。

尝试

let list=[...Array(20)].map((x,i)=>`https://picsum.photos/150/150?image=${i}`);
let index=0;

document.addEventListener("mousemove", function(){
  document.getElementById("myImg").src = list[ ++index % list.length];  
});
<img id="myImg" width="150px" heigh="150px" >

你好Ted_M你不需要使用jQuery,它非常简单,你可以通过几行代码接收它,即 声明一个函数,该函数将检查鼠标是否移动。

var myListener = function () {
document.removeEventListener('mousemove', myListener, false);
// do stuff
document.getElementById("imageid").src="../template/save.png";
};
document.addEventListener('mousemove', myListener, false);

现在您需要将图像 url 更改为

document.getElementById("imageid").src="../template/save.png";

所以现在的方法是

var myListener = function () {
document.removeEventListener('mousemove', myListener, false);
// do stuff
  document.getElementById("imageid").src="../template/save.png";
};
document.addEventListener('mousemove', myListener, false);

就是这样,如果你想做与你提供的 link 相同的事情,你必须将 imageURL 存储在一个数组中。 谢谢 评论下来寻求任何帮助。

let listImageURL = ['urlToImg1.png','urlToImg2.png','..3.png', ... till how much you need];
let body = document.querySelector('body').addEventListener('mouseover',function(event){
     // take list of images
      for(let i = 0; i<=listImageURL.length-1;i++){
           event.target.style.background = `url(${listImageURL[i]})`;
       }
});

HTML:
<body>
</body>