Javascript 动态编辑';s设置为背景图像
我在div的背景中添加了一个svg图像Javascript 动态编辑';s设置为背景图像,javascript,jquery,html,css,svg,Javascript,Jquery,Html,Css,Svg,我在div的背景中添加了一个svg图像 div#cover{ background-image:url('dwm.svg'); } 我想知道是否有任何方法可以动态编辑此svg的某些方面,如填充、笔划等。否。我相信只有将svg嵌入页面并引用它,才能做到这一点,即使这样,您也必须将背景值更改为其他内容并返回引用,由于浏览器错误。您可以尝试将svg作为DOM的一部分,进行修改,然后将背景设置为从DOM中提取的修改后的svg的数据uri。 虽然这
div#cover{
background-image:url('dwm.svg');
}
我想知道是否有任何方法可以动态编辑此svg的某些方面,如填充、笔划等。否。我相信只有将svg嵌入页面并引用它,才能做到这一点,即使这样,您也必须将背景值更改为其他内容并返回引用,由于浏览器错误。您可以尝试将svg作为DOM的一部分,进行修改,然后将背景设置为从DOM中提取的修改后的svg的数据uri。
虽然这可能有点骇客,但它确实有效
$('#bg').css('background-image', 'url(data:image/svg+xml;base64,'+btoa($('#svg').html())+')');
$('button').click(function(){
$('#fill').attr('fill', '#ff00ff');
$('#bg').css('background-image', 'url(data:image/svg+xml;base64,'+btoa($('#svg').html())+')');
});
[svg数据]
如果您不想嵌入svg,可以随时使用ajax来实现。我知道!但是,如果没有其他问题,请不要忘记接受答案。:)您可以尝试将svg作为DOM的一部分,进行修改,然后将背景设置为从DominInterest中提取的修改后的svg的数据uri,如何将背景图像设置为DOM中的svg?将svg加载到div中,修改svg数据,获取div的内容,并从中生成数据uri。