2 回答
TA贡献1809条经验 获得超8个赞
我会给img 的父div 数据属性。您显然希望以自己的语言使用自己的数据。
<div data-year="2014" data-size="xl" data-style="illustration"><img src="/Imagens/Screenshot_20200727_224457.jpg" alt=""></div>
然后在 javascript 中有一个事件监听器,并在对象中设置每个值以供以后使用。然后只需默认隐藏所有照片,然后找到匹配的图像并显示它们。
data = {};
gallery = document.querySelectorAll(".gallery div");
document.querySelector("select").addEventListener("change", function(e) {
data[e.target.getAttribute("id")] = e.target.value;
gallery.forEach(function(div) { //sets them ALL as hidden first
div.style.display = "none";
});
if (data["Ano"] != "" & data["Estilo"] != "" && data["Dimensões"] != "") {
images = document.querySelector('[data-size='" + data["Dimensões"] + "'][data-style='" + data["Estilo"] + "'][data-size='" + data["Ano"] + "']')
images.forEach(function(image) {
image.style.display = "block";
});
}
});
TA贡献1802条经验 获得超4个赞
您的图片库必须根据选择动态生成。如果您可以创建具有相应属性的图像数组,则可以使用数组的 map() 方法迭代它们,并将 div 元素与图像一起注入。
添加回答
举报