我創建了一個圖像(#hand)與鼠標光標(當在一個div內)的運動。這部分工作正常,除非有變換旋轉到#handWrap div。手形圖位置在旋轉的父div上移動不同。我知道,我們應該在將e.pageX和e.pageY的位置直接傳遞給手之前做一些計算,但找不到適當的修正。如果有人能幫助,我將不勝感激
HTML:
<div id="handWrap">
<img id="hand" src="http://s30.postimg.org/s4f5oy9dd/hand.png"/>
</div>
CSS:
* { margin:0; padding:0; }
#handWrap {
position:absolute;
top:40px;
left: 80px;
width:200px;
height:300px;
overflow:hidden;
border:1px solid red;
/* try uncommenting below, hand position not being accurate */
/* transform: rotate(-10deg); */
cursor:pointer;
}
#hand{
position: absolute;
transform: rotate(10deg);
}
的jQuery:
$("#handWrap").on("mousemove",function(e){
// I played with sin/cos/half-width etc, but doesn't worked
$('#hand').css({'left':e.pageX-130,'top':e.pageY-44});
});
Ĵ Sfiddle演示在這裏: 在的jsfiddle,嘗試在取消在#handWrap變換旋轉,然後運行,我們可以看到手的動作是不準確的鼠標光標
http://jsfiddle.net/y4pfd7u2/4/
提前感謝!
我試過轉換來源的財產,但沒有工作,http://www.w3schools.com/cssref/css3_pr_transform-origin.asp – 2014-09-29 06:12:16