<style>
body{background: white;}
#changebgcolor{
width:100px;
height:100px;
background: white;
border: 1px solid lightgray;
}
</style>
<div id="changebgcolor"></div>
let block = document.getElementById('changebgcolor');
let count = 0;
function handlerClick(){
let bgColors = ['red', 'blue', 'yellow']; // цвета какие нужны
count = (count > bgColors.length)? 0 : count;
block.style.backgroundColor=bgColors[count]
count++;
}
block.addEventListener('click', handlerClick)
const divElem = document.querySelector('div');
divElem.addEventListener('click', function(){
const imgUrl = prompt("Enter the url address");
// здесь неплохо бы добавить проверку, что пользователь действительно
// ввел адрес изображения, а не XSS-инъекцию.
divElem.style.backgroundImage = `url(${imgUrl})`;
});