문제

는 것들 중 하나 내가 하고 싶으면 브라우저에서 기반의 응용 프로그램은 사용자가 텍스트를 선택하지 않는(에 <textarea>그냥 일반 ol'텍스트를!), 내 응용 프로그램 pop 작은 도구 모음을 다음과 상호 작용할 수 있음(나의 케이스에서,주석을 추가).

내가 찾는 물건을 많이 구글에는 것에 초점을 맞춘 글 WYSIWYG editor 그러나지 않는 내가 무엇을 원, 고,그것의 대부분에서 근무 IE 지만 FF2 또는 3.이상적으로 나는 일부 기능은 반환할 수 있는 현재 선택한 텍스트가 브라우저 창에서 작동하는 IE7(6 가능한 경우),FireFox,2&3 고 사파리는 2.에서 작동하는 경우 오페라,는 보너스,하지만 그것은 아닙니다.

누군가가는 기능이 무엇입니까?나의 아이디어를 시작하는가?

도움이 되었습니까?

해결책

jQuerywrapSelection 플러그인.그것은 있을 수 있습니다 당신이 찾고 있습니다.

다른 팁

JQuery 플러그인은 멋진하지만 그것을 달성하는 매우 특정 작업:포장 텍스트를 하이라이트 태그.이 있을 수 있습니다 그냥 당신이 무엇을 원합니다.하지만 당신이 원하지 않는 경우(또는 상황에서 수)추가는 불필요한 태그는 당신의 페이지를 볼 수도 있습니다 다음과 같은 솔루션을 대신:

function getSelectedText() {
  var txt = '';

  if (window.getSelection) {
    txt = window.getSelection();
  }
  else if (document.getSelection) {
    txt = document.getSelection();
  }
  else if (document.selection) {
    txt = document.selection.createRange().text;
  }
  else return; 

  return txt;
}

이 함수 객체를 반환을 나타내는 텍스트를 선택합니다.그것은 작품 브라우저에서(내가 의심 객체를 반환하는 것은 약간 다른 브라우저에 따라고만에 대한 신뢰할 수 있는 실제적인 텍스트의 결과를 보다는 오히려 모든 속성을 추가).

참고:내가 원래 발견되는 코드 조각이 여기: http://www.codetoad.com/javascript_get_selected_text.asp

소개 범위 는 일부 세부 사항을 어떻게 다른 브라우저에 대한 액세스를 제공합니다 텍스트를 선택합니다.

내 경험에는 작업으로 이러한 다양한 Api 를 직접 매 서투른 경우 그래서 wrapSelection 에 대한 작품을 이용하겠습니다.

이러한 일이 방법 에 충분:

function getSelectedText() {
    return window.getSelection ? window.getSelection().toString() : '';
}

이 반환됩니다 '' 에서 드물게 정말 오래된 브라우저과될 수 있습의 경우에는 오페라 미니(테스트,하지만,이 될 수있는 오래된)+참고 사항을 참조하십시오 UC 브라우저이다.

행동의 개인 브라우저와 관련하여 선택 여기서 설명.

이 코드는 작품에서 사파리,IE,Firefox-의 희망 어떤 도움말

var str = (window.getSelection) ? window.getSelection() : document.selection.createRange();
str = str.text || str;
str = str + ''; // the best way to make object a string...
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top