【发布时间】:2019-10-11 13:01:26
【问题描述】:
我正在使用找到的代码,其中使用了“事件”。它有效,但我想知道应该改用什么。
我是一名新手程序员,我缺少一些概念。在这种情况下,我使用的是我在网上找到的代码,可以在下一个链接中找到: https://codepen.io/galulex/pen/eNZRVq
PhpStorm 告诉我 onmousemove="zoom(event)" 上的“事件”已被弃用。我试过擦除它,但它不起作用。我想知道我应该使用什么来代替事件。
<figure class="zoom" onmousemove="zoom(event)" style="background-image: url(//res.cloudinary.com/active-bridge/image/upload/slide1.jpg)">
<img src="//res.cloudinary.com/active-bridge/image/upload/slide1.jpg" />
</figure>
function zoom(e){
var zoomer = e.currentTarget;
e.offsetX ? offsetX = e.offsetX : offsetX = e.touches[0].pageX
e.offsetY ? offsetY = e.offsetY : offsetX = e.touches[0].pageX
x = offsetX/zoomer.offsetWidth*100
y = offsetY/zoomer.offsetHeight*100
zoomer.style.backgroundPosition = x + '% ' + y + '%';
}
【问题讨论】:
-
你不应该再使用内联JS了:改用
element.addEventListener('mousemove', (e) => {...});。 -
使用替代 jquery 选项做同样的事情
-
@PriyankMotivaras jQuery 并不总是答案。
-
@PriyankMotivaras 您也可以使用出色的 Vanilla JS 框架来做到这一点。
-
@Andreas 但是 jQuery 可以为新开发者解决一些小问题,它可以节省时间
标签: javascript html