jquery - jQuery - 在加载时从数组中随机检索图像
问题描述
我正在尝试从数组中检索图像并src
在加载时随机填充每个项目,但图像返回为[object Object]
.
$(document).ready(function() {
var imagesArray = [{
id: "one",
src: "https://cdn.shopify.com/s/files/1/1450/6394/products/MCS10014LS_MOCK_UP_1024x1024.png?v=1545018000"
},
{
id: "two",
src: "https://assets.bigcartel.com/product_images/191933374/tank_bikes_not_war_american_apparel__tri-oatmeal_mockup.png"
},
{
id: "three",
src: "https://cdn.shopify.com/s/files/1/0617/7613/products/Allday-No-Saint-Hockey-Jersey-MOCK_1024x1024.png?v=1492726972"
}
];
$(".item").each(function() {
var randomImage =
imagesArray[Math.floor(Math.random() * imagesArray.length)];
$(this)
.find("img")
.attr("src", randomImage);
});
});
.item {
border: 2px solid;
height: 40px;
width: 40px
}
.item img {
max-height: 40px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="item">
<img src="https://www.emergerstrategies.com/wp-content/themes/cannyon_/media/_frontend/img/grid-no-image.png">
</div>
<div class="item">
<img src="https://www.emergerstrategies.com/wp-content/themes/cannyon_/media/_frontend/img/grid-no-image.png">
</div>
<div class="item">
<img src="https://www.emergerstrategies.com/wp-content/themes/cannyon_/media/_frontend/img/grid-no-image.png">
</div>
解决方案
对图像数组进行采样的结果是一个对象,例如:
{
id: "one",
src: "https://cdn.shopify.com/s/files/1/1450/6394/products/MCS10014LS_MOCK_UP_1024x1024.png?v=1545018000"
}
您只需要从中引用正确的属性:
.attr("src", randomImage.src);
您看到[object Object]
的是因为属性值在分配时被强制转换为字符串,并且object.toString()
是字符串文字"[object Object]"
:
({id: "one", src: "foo"}).toString()
"[object Object]"
推荐阅读
- c# - 如何使用 OpenXML 在 Excel 中读取指定范围
- html - 在静态 html 页面上显示最新的 wordpress 特色图片
- nativescript - TabView 标题样式
- php - Laravel 5.6 如何安排电子邮件队列
- xamarin - 通过 Web 服务绑定到 Xamarin Listview
- php - PHP - Mysql:无法连接到数据库
- http - 为什么重写规则不会从 OPTIONS 转换为 GET
- javascript - Firebase,Auth0,反应。自定义令牌格式不正确。请检查文档
- javascript - 使用 TextDecoder/TextEncoder 将 ArrayBuffer 转换为 String,然后返回 ArrayBuffer,返回不同的结果
- android - 无法使用json在点之间绘制路线