2009-03-19 4 views
1

드롭하는 방법 : 그러나 개체를 끌고있는 때자바 스크립트 드래그 효과를 깜박임 방지하고 내가 드래그를 처리하고 내가 쓰고 있어요 스크립트에 드롭 (jQuery를 함께) 다음과 같은 자바 스크립트를 사용

jsc.ui.dragging = false; 
jsc.ui.drag_element = {}; 
$(".drag-target").mousedown(function() { 
    jsc.ui.drag_element = $(this); 
    jsc.ui.dragging = true; 
}); 
$("html").mousemove(function(e) { 
    if(jsc.ui.dragging) { 
     jsc.ui.drag_element.css({"position": "absolute", "top": e.clientY - 1, "left": e.clientX - 1, "z-index": "100"}); // - 1s are due to IE not leaving go otherwise 
     $("#overlay").show(); // Overlay stops text beneath being selected. TODO Stop current elements text being selected. 
    } 
}); 
$(".drag-target").mouseup(function() { 
    if(jsc.ui.dragging) { 
     jsc.ui.dragging = false; 
     jsc.ui.drag_element.css("z-index", "98"); 
     $("#overlay").hide(); 
    } 
}); 

을 그 안의 텍스트는 깜박 거리는 선택을 갖습니다. 즉, 요소가 움직일 때 켜기와 끄기로 선택됩니다. 이것을 막거나 영향을 숨길 수있는 방법이 있습니까?

답변

1

jQuery UI Draggable을 사용하지 않는 이유가 있습니까? 귀하의 코드는 같을 것이다 :

$(".drag-target").draggable(); 

당신은 적어도 당신이 문제를 깜박 거림을 해결하는 데 도움이 될 수 있습니다, 그것은 구축 어떻게 확인해야합니다.

+0

jQuery UI 모듈 식입니까? 그렇다면 jQuery UI에 대한 인식이 부족하기 때문입니다. 그러나 현재 jQuery UI를 사용하고 있지 않으므로 한 섹션에 대한 추가 프레임 워크를 추가하는 것이 잔인한 것으로 보이며 전체 프레임 워크를 사용해야하는 경우 성능에 대한 우려가 있습니다. – Macha

+0

완전히 모듈화되어 있으므로 여기에서 필요한 항목을 선택할 수 있습니다. http://jqueryui.com/download. jquery.ui.core 및 draggable에 대한 27k, 내 의견으로는 그렇게 크지는 않습니다. 그냥 시도해보고 유지하고 싶은지 또는이 깜박 거리는 문제를 해결하려고하는지 결정하십시오.) – ybo

0

효과의 정도는 하드웨어 및 비디오 드라이버에 달려 있다고 생각합니다. 완전히 피하기 위해 사각형을 그린 다음 마우스 버튼을 놓을 때 창을 다시 그릴 수 있습니다.