如何在点击#thumbs1时将#largeImage1的src赋值给span的background-image
你当前的问题是url()内没有传入实际的图片地址参数,同时全局选择span可能会误改页面其他span元素的样式,以下是修正后的代码:
$('#thumbs1').delegate('img', 'click', function() { // 存储处理后的大图地址,两处逻辑复用 const largeImgSrc = $(this).attr('src').replace('thumb', 'large'); $('#largeImage1').attr('src', largeImgSrc); // 将图片地址拼接到url参数中,外层双引号避免路径含特殊字符时解析异常 // 选择器指定为灯箱内的span,避免影响页面其他span元素 $('#img1 span').css('background-image', `url("${largeImgSrc}")`); });
如果你的运行环境不支持ES6模板字符串,可以将设置背景的行替换为兼容拼接写法:
$('#img1 span').css('background-image', 'url("' + largeImgSrc + '")');
额外提示:如果背景图仍然没有正常渲染,请检查span元素是否设置了明确的宽高,以及background-size、background-repeat等背景相关属性是否符合展示需求。
内容的提问来源于stack exchange,提问作者pv619
相关产品推荐
相关产品推荐

