현재 마우스 위치를 얻고 싶지만 사용하고 싶지 않습니다.
$(document).bind('mousemove',function(e){
$("#log").text("e.pageX: " + e.pageX + ", e.pageY: " + e.pageY);
});
위치를 파악하고 정보를 처리하면되므로
답변
마우스 위치 를 쿼리 하는 방법이 없다고 생각 하지만 mousemove
정보를 저장 하는 핸들러를 사용 하여 저장된 정보를 쿼리 할 수 있습니다.
jQuery(function($) {
var currentMousePos = { x: -1, y: -1 };
$(document).mousemove(function(event) {
currentMousePos.x = event.pageX;
currentMousePos.y = event.pageY;
});
// ELSEWHERE, your code that needs to know the mouse position without an event
if (currentMousePos.x < 10) {
// ....
}
});
그러나 코드 등을 제외한 거의 모든 코드 setTimeout
는 이벤트에 대한 응답으로 실행되며 대부분의 이벤트는 마우스 위치를 제공합니다. 따라서 마우스가 어디에 있는지 알아야하는 코드는 이미 해당 정보에 액세스 할 수 있습니다.
답변
이벤트를 사용하지 않고 jQuery에서 마우스 위치를 읽을 수 없습니다. 먼저 event.pageX
및 event.pageY
속성이 모든 이벤트에 존재하므로 다음을 수행 할 수 있습니다.
$('#myEl').click(function(e) {
console.log(e.pageX);
});
다른 옵션은 클로저를 사용하여 전체 코드가 mousemove 핸들러에 의해 업데이트되는 변수에 액세스하도록하는 것입니다.
var mouseX, mouseY;
$(document).mousemove(function(e) {
mouseX = e.pageX;
mouseY = e.pageY;
}).mouseover(); // call the handler immediately
// do something with mouseX and mouseY
답변
이 방법을 사용했습니다.
$(document).mousemove(function(e) {
window.x = e.pageX;
window.y = e.pageY;
});
function show_popup(str) {
$("#popup_content").html(str);
$("#popup").fadeIn("fast");
$("#popup").css("top", y);
$("#popup").css("left", x);
}
이런 식으로 항상 상단으로부터의 거리를 y에 저장하고 왼쪽으로부터의 거리를 x에 저장합니다.
답변
또한 mousemove
브라우저 창에서 드래그 앤 드롭을 수행하면 이벤트가 트리거되지 않습니다. 드래그 document.ondragover
앤 드롭 중에 마우스 좌표를 추적하려면 이벤트 핸들러를 연결 하고 해당 originalEvent 속성을 사용해야합니다.
예:
var globalDragOver = function (e)
{
var original = e.originalEvent;
if (original)
{
window.x = original.pageX;
window.y = original.pageY;
}
}
답변
사용 window.event
-이 마지막 포함 event
하고 같이 event
포함 pageX
, pageY
등 크롬, 사파리, IE를위한 작품이 아닌 FF.
답변
var CurrentMouseXPostion;
var CurrentMouseYPostion;
$(document).mousemove(function(event) {
CurrentMouseXPostion = event.pageX;
CurrentMouseYPostion = event.pageY;
});
주 개체, 내 경우에는 문서 개체에 eventListener를 만들어 마우스가 모든 프레임을 조정하고 전역 변수에 저장합니다. 이렇게하면 언제든지 마우스 Y & Z를 읽을 수 있습니다.
답변
나는 이것을 만났고, 공유하면 좋을 것입니다 …
너희들은 어떻게 생각하니?
$(document).ready(function() {
window.mousemove = function(e) {
p = $(e).position(); //remember $(e) - could be any html tag also..
left = e.left; //retrieving the left position of the div...
top = e.top; //get the top position of the div...
}
});
그리고 붐, 여기 있습니다 ..