2015-05-18 105 views
2

我在js中建立時間選擇器,您可以在「真實」時鐘上設置小時。 我旋轉div使用該腳本:鼠標旋轉div

if (e.target.id == "rotationSliderContainer") { 
    g = e.offsetX; 
    h = e.offsetY; 
} 
var atan = Math.atan2(g - radius, h - radius); 
deg = -atan/(Math.PI/180) + 180; 

雖然它的工作原理有一個小錯誤,只要你嘗試到2/3和9/10的「停止」或凍結之間移動DIV,它甚至退貨度爲NaN當我旋轉div而鼠標仍然在div上。

我找不到解決這個小問題的任何解決方法。我試着用asin()而不是atan2,但它仍然不起作用。

我忽略了什麼?演示:http://jsfiddle.net/afo7ky03/6/

+0

這對我來說工作得很好。這可能是一個瀏覽器兼容性問題,而不是一個javascript問題。我會多看一些。 – Scelesto

回答

2

這是你的問題

<div id="rotationSliderDegrees">0&deg;</div> 

看在你的web開發工具,你會看到,DIV停止,因爲你的鼠標經過這個div。

+0

哇,我花了很長時間在這個問題上..它非常簡單!謝謝! – Darlyn