2011-01-30 7 views

답변

1

IE에서 예. 다른 브라우저에서는 없습니다.

모든 주요 데스크톱 브라우저는 사용자 선택에만 적용되는 document.execCommand()의 일부 형식을 구현합니다. IE에서는 TextRange 개체도 execCommand 메서드를 사용합니다.

<div id="test">Here is a test div</div> 

<script type="text/javascript"> 
    var div = document.getElementById("test"); 
    div.onmouseover = function() { 
     if (document.body.createTextRange) { 
      var textRange = document.body.createTextRange(); 
      textRange.moveToElementText(div); 
      textRange.execCommand("foreColor", false, "green"); 
     } 
    }; 
</script> 
0

알고 계시지 않는 경우, .execCommand은 IE에서만 사용할 수있는 비표준 자바 스크립트 기능이므로 피해야합니다.

사용하고자하는 것을 알려 주시면 표준을 준수하는 대안을 제안 할 수 있습니다.

+1

'은 현재 선택에서 작동 document.execCommand'는, 실제로 잘 지원 : 사용자가 커서를 가져 가면 예를 들어, 다음은 요소 녹색의 텍스트 내용을 설정합니다. 파이어 폭스는 1.0 일 전부터 사파리 2.0 이후부터 WebKit을 사용 해왔다. 오페라는 적어도 9.0 이후부터 지원해 왔습니다. –

+0

@TimDown'execCommand'는 실제로 잘 지원되는 것 같습니다. 그것은 사양에 문서화되어 있습니까? 나는 그것이 "Hackish"인 것을 모두 느낀다. – Raynos

+0

확실히 일관되게 구현되지는 않는다. 그것이 최종적인 방법을 모르지만 HTML5에서 지정하기위한 노력이 있습니다. http://dev.w3.org/html5/spec/Overview.html#execCommand –

관련 문제