2009-09-25 3 views
2

나는 내가 "일부"예를 들어 텍스트의 일부를 선택 예를자바 스크립트를 사용하여 일부 텍스트의 배경색을 변경 하시겠습니까?

<b>something</b> 

를 들어, html 태그 텍스트의 일부를 가지고있다.

과 getSelection(). getRangeAt (0); 캐럿 (textcursor)의 위치를 ​​얻으므로 텍스트의 어느 부분을 선택했는지 알 수 있습니다.

저는 startOffset과 endOffset을 가지고 있습니다. startOffset와 endOffset의 HTML 태그를 무시하지만, 문제는 수있는 있도록 수익률은 나쁘지 않다, 그리고 나는이 문제를 해결하는 방법을

<span style="background-color: somecolor ">some</span> 

어떤 십오을 적용 할 텍스트의 어떤 부분에 모르는입니다 ? 감사

+0

은이를 발견하고, 그 읽을 것, 어쩌면 http://www.quirksmode.org/dom/range_intro.html –

답변

1
<b id='str1'>something</b> 
<script> 
function jsReplace() 
{ 
    var elem = document.getElementById('str1') 
    elem .innerHTML = elem .innerHTML.replace('some', '<span style="background-color: somecolor ">some</span>') 

} 
</script> 
+0

예,하지만 당신은 무엇을 할 것,없는 경우 ID를 도움이 될 것입니다 그 b 태그에? –

+0

당신은 어떻게 당신의 문자열을 얻었고 어떤 통제를 받았습니까? 선택과 범위 – Khodor

+0

는, 사용자가 마우스 –