欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

CSS縮放期間最終值的Javascript event.offset替代.過渡

洪振霞1年前9瀏覽0評論

我有一個HTML圖像,我想平移。程序化縮放。為了改善體驗,我添加了一個CSS過渡,以實現流暢度。

當我點擊圖像時,我需要確定鼠標在圖像中的位置。目前,event.offsetX為我提供了鼠標在圖像中動畫當前幀的位置。

我想知道鼠標的位置,就好像動畫已經結束了一樣(即使它還沒有結束)。

這是解釋這個問題的另一種方法。我在下面創建了一個例子,當我們點擊按鈕后,圖像會放大。縮放需要5秒鐘。在縮放過程中,如果我保持鼠標不動并持續單擊,偏移值會隨著圖像在屏幕上的移動而變化,然后在5秒鐘后穩定下來并返回相同的偏移值。如果可能的話,我想在動畫結束前知道最終的偏移值。

<button onclick="onButton()">Zoom</button>
<br>
<img
    id='img'
    onclick="onImage(event)"
    src="https://picsum.photos/id/237/200"
    style="transition: 5s ease"
>

<script>
function onButton() {
    const img = document.querySelector('#img')
    img.style.scale = 5.0
}
function onImage(event) {
    console.log(event.offsetX, event.offsetY)
}
</script>

如果你不介意添加一些額外的HTML和CSS:

function onButton() {
  const img = document.querySelector("#img");
  img.style.scale = 5.0;
  const target = document.querySelector("#target");
  target.style.scale = 5.0;// make sure target's style matches img's style
}
function onImage(event) {
  console.log(event.offsetX, event.offsetY);
}

#wrapper {
  display: inline-block;
  position:relative;
  font-size:0;
}
#target{
  position:absolute;
  width:100%;
  height:100%;
}
#img {
  transition: 5s ease;
  z-index:2;
  pointer-events:none;
}

<button onclick="onButton()">Zoom</button>
<br>
<div id="wrapper">
  <div id="target" onclick="onImage(event)"></div>
  <img id="img" src="https://picsum.photos/id/237/200">
</div>