2011-01-30 22 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應該避免的非標準JavaScript函數。

如果您告訴我們您要使用它,那麼我們可以建議一個符合標準的替代方案。

+1

`document.execCommand`,只對當前所選的作品,實際上是很好的支持:例如,當用戶將光標懸停在它下面會變成一個綠色元素的文本內容。自從1.0天前Firefox就已經擁有它,而且我認爲,自從Safari 2.0開始,WebKit就已經擁有了。 Opera至少從9.0開始支持它。 – 2011-01-31 01:27:24