假设我有两个div
如何使用.find获取div1的背景图像,而不是将背景图像应用于div2,并将“.jpg”替换为“_highlighted.jpg”?
var div2bg = $('.div1').find('div').attr('background-image'??)//how to assigned the background image as a variable?
$('.div2').css("background-image", "url(" + div2bg + ")");
$('.div2').css("background-image").replace(".jpg", "_highlighted.jpg");
答案 0 :(得分:4)
关闭但是replace返回一个字符串,它不会改变源。
我想你想要这个:
var div2bg = $('.div1').css('background-image');
$('.div2').css("background-image", div2bg.replace(".jpg", "_highlighted.jpg"));
答案 1 :(得分:1)
您可以使用以下代码完成此操作:
// Get the first background image
var bg = $(".div1").css("background-image");
// Assign a modified version to another DIV
$(".div2").css("background-image", bg.replace(".jpg", "_highlighted.jpg"));
以下是否适用于您的项目,您决定:我想指出这种类型的东西通常最好用类处理,并使用jQuery方法,如:
$(".div2").addClass("highlighted");
$(".div2").removeClass("highlighted");
它极大地降低了脚本的详细程度,并允许您在CSS中保持视觉样式,而不是部分依赖于脚本中的值和字符串。