나는 다음과 같은 jQuery를 발췌가 : 나는 위의 함수가 트리거됩니다 id=base
와 div
태그의 텍스트를 선택할 때의 jQuery 함수는 DOM 요소 또는 임시 DOM 요소에 연결 연결없이 호출
Tselector.mouseup = function() {
var sel = getSelectionCharOffsetsWithin(document.getElementById("base"));
//...
}
매번를 마우스 버튼을 놓을 때. getSelectionCharOffsetsWithin(element)
은 선택을 구문 분석하는 방법입니다 (추가 단계를 위해 필요함).
지금 내가하고 싶은 것은 내가 선택으로 할 수있는 것에 대한 옵션을 보여주는 툴팁을 팝업하는 것입니다. (iOS에 익숙한 사용자의 경우 웹 브라우저에서 텍스트를 선택할 때의 기능과 비슷합니다.)
문제는 jQuery가 작업을 수행하려면 DOM 요소가 필요하다는 것입니다. 예를 들어 tipsy 사용 :
$('#foo').tipsy();
툴팁을 id=foo
을 갖는 div
태그로 연결된다.
mouseup
함수를 트리거 할 때 선택한 텍스트에 해당 요소가 없으므로 선택한 내용을 툴팁에 연결할 수 없습니다.
DOM 요소에 연결하지 않고 jQuery 함수를 직접 호출 할 수 있습니까? 예 : 마우스 위치로 도구 설명을 연결하는 경우)? 그렇지 않은 경우 내 이벤트에서 만들어지고 연결되지만 HTML 코드에 영구적으로 저장되지 않은 임시 DOM 요소로 해결 방법을 사용할 수 있습니까? 어떤 조언을 http://jsfiddle.net/noplacetoh1de/bYNmb/
감사 : 여기
이를 입증하는 바이올린입니다!
문서 또는 창인 경우에도 연결할 개체가 있어야합니다. –
마우스 위치에 연결하고 싶습니다. 가능합니까? jQuery로 어떻게 정의 할 수 있습니까? – noplacetoh1de
마우스가 노드 또는 개체가 아니기 때문에 이벤트가 바인딩 될 수 없습니다. 브라우저와 상호 작용하기 만하면 브라우저가 클릭 또는 이동이 발생한 위치를 해석하고 이벤트를 적절하게 실행합니다. 마우스 버튼이 아래에서 위로 움직일 때마다 이벤트를 발생 시키려면 해당 이벤트를 문서에 바인딩하십시오. –