Fixed it with vanilla JS.
let frames = document.querySelectorAll(".image-frame");
const imageWidth = 850;
window.addEventListener("scroll", function () {
frames.forEach((element) => {
let rect = element.getBoundingClientRect();
if (rect.left < 0) {
element.querySelector('.image').style.transform =
`scale3d(${((imageWidth + element.getBoundingClientRect().left)/imageWidth)}, 1, 1)`;
console.log(
"change detected " + `${(imageWidth + element.getBoundingClientRect().left)} ${rect.left}`
);
}else{
element.querySelector('.image').style.transform = "scale3d(1,1,1)";
}
});
});