1、描述问题
我有一个django项目,其中的一个页面,背景图片是由css写的,就是底下这个 background-image
.img:before {
content: "";
position: absolute;
right: 0;
top: 0;
width: 900px;
height: 100%;
background-image: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/142996/sections-3.jpg");
background-size: cover;
transition: transform 1.2s ease-in-out;
}
2、现在情况
我自己手写了一个js,所以现在是由js文件控制这个背景图片,并且可以成功运行出图
function updateBackgroundImage(url) {
// 查找已有的动态样式元素,若存在则先删除
const existingStyle = document.getElementById('dynamic-bg-style');
if (existingStyle) {
existingStyle.remove();
}
// 创建新的 <style> 元素
const style = document.createElement('style');
style.id = 'dynamic-bg-style';
style.textContent = `.img:before { background-image: url('${url}'); }`;
document.head.appendChild(style);
}
updateBackgroundImage('https://s3-us-west-2.amazonaws.com/s.cdpn.io/142996/sections-3.jpg');
3、!问题
我不想让图片太单一,可以每天换个背景图片,所以想到了必应每日壁纸的api,如下:
https://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1
4、想法
我想使用js访问这个api接口,然后拼接成真实的图片地址,然后通过js使用,最后实现换图的操作;但这好像涉及到了js的跨域问题,我的项目只求在本地使用,小项目,不上线