Advertisement
Guest User

Untitled

a guest
Apr 27th, 2017
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.99 KB | None | 0 0
  1. function setZoom({ container, imageUrl }) {
  2. const image = document.createElement('div')
  3. image.classList.add('photo')
  4. image.style.backgroundImage = 'url(' + imageUrl + ')'
  5.  
  6. container.appendChild(image)
  7. container.addEventListener('mouseover', () => image.style.transform = 'scale(2)')
  8. container.addEventListener('mouseout', () => image.style.transform = 'scale(1)')
  9.  
  10. container.addEventListener('mousemove', ({ pageX, pageY }) => {
  11. const { offsetWidth, offsetHeight } = container
  12. const offsetLeft = container.getBoundingClientRect().left
  13. const offsetTop = container.getBoundingClientRect().top
  14.  
  15. console.log('offsetLeft', offsetLeft)
  16. console.log('offsetTop', offsetTop)
  17.  
  18. image.style.transformOrigin = ((pageX - offsetLeft) / offsetWidth) * 100 + '% ' + ((pageY - offsetTop) / offsetHeight) * 100 +'%'
  19. })
  20. }
  21.  
  22.  
  23. //Init
  24. setZoom({
  25. container: document.querySelector('.img-container'),
  26. imageClass: 'photo',
  27. imageUrl: document.querySelector('.img-container').href
  28. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement