Lab 29: Mouse Move Shadow

Link to Lab 29:

In this lab, we were assigned to create a user interactive webpage where different text shadows would move as the mouse moves. In the image below, you can see exactly what I mean, there are four different texts of the same word and those four will move depending on the location of the mouse. Honestly, the Javascript isn't very long, it is just one function that controls everything which is the function below.
function shadow(e) {
const { offsetWidth: width, offsetHeight: height } = hero;
let { offsetX: x, offsetY: y } = e;
if (this !== e.target) {
x = x + e.target.offsetLeft;
y = y + e.target.offsetTop;
}
const xWalk = Math.round((x / width * walk) - (walk / 2));
const yWalk = Math.round((y / height * walk) - (walk / 2));
text.style.textShadow = `
${xWalk}px ${yWalk}px 0 rgba(255,0,255,0.7),
${xWalk * -1}px ${yWalk}px 0 rgba(0,255,255,0.7),
${yWalk}px ${xWalk * -1}px 0 rgba(0,255,0,0.7),
${yWalk * -1}px ${xWalk}px 0 rgba(0,0,255,0.7)
`;
}

 This function controls the shadows of the text and the last four lines are the ones that dictate the movement of the shadows. The other part that needs to be added is an event listener that essentially performs the function when the mouse is hovering over the canvas. This lab was very fun to play with and see what can be done with. There is also the fact that the lab is just aesthetically pleasing.


Comments

Popular posts from this blog

Lab 23-2: Type Ahead

WBL Workshop 2

Lab7 - Simple Accordion