3
방금 DOM에 삽입 한 일반 텍스트 노드가 있습니다.Rangy를 사용하여 텍스트 노드를 선택하려면 어떻게해야합니까?
Javascript 또는 Rangy를 사용하여 사용자가 마우스로 실제로 선택한 것과 동일하게 선택하고 싶습니다.
나는 다음을 (그리고 나는 꽤 추한 생각) 코드 :
// insert as regular text node
var txt = document.createTextNode($mySpan.text());
$myHeading.get(0).insertBefore(txt, $mySpan.get(0));
// select again
var sel = rangy.getSelection();
sel.removeAllRanges()
var range = rangy.createRange();
range.selectNode(txt);
내가이 어떤 도움을 사랑하는 것입니다. 나는 그것을 구현하는 방법을 모르고, 고글은 작동하지 않았다. 생각할 수있는 유일한 방법은 텍스트 사이에 2 개의 요소를 삽입 한 다음 요소를 제거한 다음 요소를 제거하는 것입니다. 그러나보다 우아한 방법이 있는지 궁금합니다.
감사합니다. 도움을 주시면 감사하겠습니다.
이sel.setSingleRange(range);
그냥 당신이 현재 가지고있는의 끝 부분에 추가 : 내 눈이 나를기만하지 않는 한
무슨 바보 ..! 나는 그것을 가지고 그것을 제거했다. : -/ 감사합니다, 루이! – nbrogi
이것은 텍스트 노드뿐만 아니라 다른 노드 (내 경우에는 앵커)에서도 작동합니다. – siannopollo