<html>
<body>
<script language="javascript">
function getSelectionHTML()
{
var div = document.getElementById("myDiv");
if (document.createRange) {
var textNode=div.firstChild;
var rangeObj=document.createRange();
rangeObj.setStart(textNode,0);
rangeObj.setEnd(textNode,5);
div .innerHTML = div .innerHTML.replace(rangeObj.toString(), '<span style="background-color: lime">'+rangeObj.toString()+'</span>')
}
}
</script>
<div id="myDiv">
asdf as<b>dfas df asf asdf sdfjk dvh a sjkh jhcdjkv</b> iof scjahjkv ahsjv hdjk biud fcsvjksdhf k
</div>
<form name="aform">
<input type="button" value="Get selection" onclick="getSelectionHTML()">
</body>
</html>
好的。讓我解釋 - > getSelectionHTML()方法用於從0到10的字符選擇。我通過「myDiv」id獲取值。但內部粗體,斜體&其他標籤給我麻煩。通過忽略div標籤的內部元素來選擇文本javascript
簡而言之,我只想對「myDiv」標籤中的前十個字符(&應用它們的span標籤)進行選擇。
我到底錯過了什麼?
爲什麼你使用兩個局部變量來存儲'document.getElementById('myDiv')'? – 2010-06-01 13:27:36
@Marcel - 等待更正。請參閱 - 幾秒鐘後編輯的問題。 – 2010-06-01 13:29:36
嘿!注意這一點。我試圖在這個鏈接 - http://help.dottoro.com/ljvfwqlq.php – 2010-06-01 14:12:07