javascript - 悬停时显示随机图像
问题描述
我正在寻找一种在悬停某些文本或 div 时显示随机图像的方法。
尝试了一些 CSS 方法,但我认为没有 jQuery 或 Javascript 是不可能的,两者都可以。
我(过于复杂)的想法是使用随机脚本,例如
Math.floor(Math.random() * 10);
然后使用一些嵌套的 if 语句(我知道)在图像文件上添加或删除类,其中 4/5(或其他)将具有隐藏标签,而随机的则会将其删除。我什至无法弄清楚,我绝对认为这是解决这个问题的一种混乱方式。有没有人有更好的主意?非常感谢!
解决方案
您可以将图像 url 放在一个数组中,并在用户将鼠标悬停在文本上时随机选择一个。
例如
var arr = ["1.jpg", "2.jpg", "3.jpg", "4.jpg", "5.jpg"];
function getRandomImage() {
var index = Math.floor(Math.random() * arr.length);
return arr[index];
}
$("#div").hover(
function() {
var image = getRandomImage();
$("#img").attr("src", image);
console.log(image);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="div">hover over me</div>
<img id="img" />
推荐阅读
- ios - Xcode 的 Build Options 中的 $VALIDATE_PRODUCT 标志做了什么样的验证?
- javascript - 如何优化我的功能不重复行?
- scheme - 在 Racket 程序中使用 Scheme 库
- python - Excel 中的 Oracle - 动态创建列类型
- amazon-web-services - AWS EC2 实例并通过 gmail SMTP 587 发送电子邮件
- c# - 是否可以使用 WPF 从 2D PNG 图像(高级形状)创建 3D 模型?
- http - 使用 http 或更好的 https 的 itemtype?
- python - Python从文件编码问题中读取
- java - addChildEventListener(Firebase)中的数组问题
- sql - 分组查询的历史