2013-07-22 4 views
0

나는 jQuery("#"+item) 레이블입니다 jQuery - jquery를 사용하여 레이블에 클릭 이벤트를 바인딩하고 마우스 클릭 좌표를 가져 오는 방법은 무엇입니까?

//below function will be called when we click on label. 
function showListClick(e, which, optWidth, item) 
{ 
    mouseMoveHandler = function(e){ 
     if(e.pageX > 0 && e.pageY > 0) 
      showItemList(e, which, optWidth, e.pageX, e.pageY); 
    }; 
    jQuery("#"+item).click(mouseMoveHandler); 
} 

라벨

에 마우스 클릭을 처리하는 코드를 다음했다. 클릭 이벤트에서 mouseMoveHandler이라는 하나의 처리기를 바인딩 한 다음 해당 함수 showItemList()에서 하나의 팝업 메뉴를 표시하고 있습니다. 여기서 문제는 핸들러에 e.pageX and e.pageY > 0 일 때만 팝업 메뉴를 표시하는 조건을 넣었습니다. 레이블을 처음 클릭 할 때 음의 값을 반환하기 때문입니다.

아무에게도 조언을 할 수 있습니까?

+0

을 클릭; jQuery ("#"+ item)와 같지 않음 .click (mouseMoveHandler); jsfiddle.net에 코드를 표시 할 수 있습니까? –

+0

사실 jsfiddle에 모든 코드를 표시 할 수 없도록 실제로 일련의 함수와 일부 종속 코드가 있습니다. 하지만 당신의 해결책을 확인하려고합니다. – NullPointer

+0

나는 당신의 해결책을 시도했지만 운이 없었습니다. – NullPointer

답변

1

@NullVoid, 안녕하세요, 저는 이것을 시도했습니다.

Working Demo

그것은 당신이 당신의 필요를 얻는 데 도움이 될 수 있습니다

$(document).ready(function() { 
    $("#foo").change(function() { 
     var flag=true; 
     $(document).mousemove(function(e){ 
      if(flag==true){ 
       $('#showOrHideMe').html(e.pageX +', '+ e.pageY); 
       flag=false; 
      } 
      }); 
    }); 
}); 
.

Here 참조하여 마우스 이벤트가 jQuery를 ("#"+ 항목) .bind ('클릭'하는 mouseMoveHandler)과 같은 바인딩 Here

+0

건초! 나는 그것을 감사하고 동일을 검사하고 나중에 알려주지 :) – NullPointer

+0

나는 시도했지만 내 경우에는 작동하지 : ( – NullPointer

관련 문제