2012-12-04 6 views
1

나는이 스크립트를 가지고 있는데,이 스크립트는 이미지를 다룰 때 커서의 봇 오른쪽에 이미지를 제공한다. 나는 위치를 바꿀 생각을하지 않았지만, javacript으로 "좋은"것이 아니기 때문에 나는 그것을 어떻게하는지 정말로 모른다.자바 스크립트 onmouseover 위치 마우스

function followmouse(e){ 
var xcoord=offsetfrommouse[0] 
var ycoord=offsetfrommouse[1] 

var docwidth=document.all? truebody().scrollLeft+truebody().clientWidth : pageXOffset+window.innerWidth-15 
var docheight=document.all? Math.min(truebody().scrollHeight, truebody().clientHeight) : Math.min(window.innerHeight) 

if (typeof e != "undefined"){ 
    if (docwidth - e.pageX < defaultimagewidth + 2*offsetfrommouse[0]){ 
     xcoord = e.pageX - xcoord - defaultimagewidth; // Move to the left side of the cursor 
    } else { 
     xcoord += e.pageX; 
    } 
    if (docheight - e.pageY < defaultimageheight + 2*offsetfrommouse[1]){ 
     ycoord += e.pageY - Math.max(0,(2*offsetfrommouse[1] + defaultimageheight + e.pageY - docheight - truebody().scrollTop)); 
    } else { 
     ycoord += e.pageY; 
    } 

} else if (typeof window.event != "undefined"){ 
    if (docwidth - event.clientX < defaultimagewidth + 2*offsetfrommouse[0]){ 
     xcoord = event.clientX + truebody().scrollLeft - xcoord - defaultimagewidth; // Move to the left side of the cursor 
    } else { 
     xcoord += truebody().scrollLeft+event.clientX 
    } 
    if (docheight - event.clientY < (defaultimageheight + 2*offsetfrommouse[1])){ 
     ycoord += event.clientY + truebody().scrollTop - Math.max(0,(2*offsetfrommouse[1] + defaultimageheight + event.clientY - docheight)); 
    } else { 
     ycoord += truebody().scrollTop + event.clientY; 
    } 
} 
gettrailobj().left=xcoord+"px" 
gettrailobj().top=ycoord+"px" 

}

나는 내가하지 않으면, 아무도 내가 다음 붙여 넣기해야하는지 코드 말해 줄 수, 바로 여기에 올바른 코드를 생각?

+0

이 스크립트가 적합한가요? –

답변

0

이것은 시작하는 데 도움이 될 수 있습니다. 나는 그것을 최적화하려고하지 않았다.

Codepen example

내 jQuery를 경험은 제한적이지만, 나는 올바른 구문 지금 가장 중요하다고 생각하지 말아.