如何在点击时将 IMG SRC 属性添加到 SPAN CSS 背景图像中
Posted
技术标签:
【中文标题】如何在点击时将 IMG SRC 属性添加到 SPAN CSS 背景图像中【英文标题】:How to add IMG SRC attribute into SPAN CSS background-image on click 【发布时间】:2021-10-26 19:58:18 【问题描述】:如何在每次点击 #thumbs1 时将 #largeImage1 SRC 属性添加到跨度背景图像中?它应该使用新的 SRC 更新 span 背景图像。
我似乎无法让它工作。我的语法不起作用。你能帮忙吗?
<a href="#img1">
<img id="largeImage1" src="google-1.png" />
</a>
<a href="#" class="lightbox" id="img1">
<span></span>
</a>
<div id="thumbs1">
<img src="google-1.png" />
<img src="google-2.png" />
<img src="google-3.png" />
<img src="google-4.png" />
</div>
$('#thumbs1').delegate('img', 'click', function() <-- This is working fine
$('#largeImage1').attr('src', $(this).attr('src').replace('thumb', 'large')); <-- This is working fine
$('span').css('background-image', 'url()'); <---- This is the problem, I can see in the inspection tool, that when clicked it adds background-image to span but doesn't add image SRC inside it. I don't know what to call inside the url. I checked online but seemed confusing
);
提前谢谢你
【问题讨论】:
我没有在任何图像的 SRC 中看到文本"thumb"
。 url()
部分还应该包含哪个 URL?
谢谢,我正在尝试在 'span' 'background-image' 中添加 'largeImage1' SRC。谢谢
【参考方案1】:
从您的示例中无法完全清楚您想要做什么。这是一个可能对您有所帮助的示例。
$(function()
function moveShade(target)
$("#thumbs1 .shade").css(
width: $(target).width(),
height: $(target).height(),
top: $(target).position().top,
left: $(target).position().left
);
$('#thumbs1').delegate('img', 'click', function()
$('#largeImage1').attr('src', $(this).attr('src'));
$('.lightbox span').css('background-image', 'url(' + $(this).attr('src') + ')');
$("#thumbs1 .active").removeClass("active");
$(this).addClass("active");
moveShade(".active");
);
moveShade(".active");
);
a[href='#img1'] img
width: 480px;
#thumbs1
position: relative;
#thumbs1 img
width: 100px;
#thumbs1 .shade
background-color: rgba(0, 0, 0, 0.45);
position: absolute;
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a href="#img1">
<img id="largeImage1" src="https://i.imgur.com/HGKqg1T.jpeg" />
</a>
<a href="#" class="lightbox" id="img1">
<span></span>
</a>
<div id="thumbs1">
<img class="active" src="https://i.imgur.com/HGKqg1T.jpeg" />
<img src="https://i.imgur.com/bLvEb3m.jpeg" />
<img src="https://i.imgur.com/IjT9NLy.jpeg" />
<img src="https://i.imgur.com/CkIsdeq.jpeg" />
<div class="shade"></div>
</div>
您可以看到,在 CSS 中,您更新了 url()
,但您必须添加所需的 URL 字符串。我认为,这将来自其他缩略图之一。
【讨论】:
非常感谢你,这正是我想要的。对不起,混乱的伙伴。它现在可以正常工作。非常感谢你,真的很感谢它,伙计:)以上是关于如何在点击时将 IMG SRC 属性添加到 SPAN CSS 背景图像中的主要内容,如果未能解决你的问题,请参考以下文章