我有以下的代碼選擇元素的全部內容:用Javascript選擇特定詞?
function selectElement(element) {
var sel = window.getSelection();
sel.removeAllRanges();
var range = document.createRange();
range.setStart(element, 0);
range.setEnd(element, 1);
sel.addRange(range);
console.log(range);
}
我稱之爲通過:
selectElement(document.getElementById("input"));
如果#input
看起來是這樣的:
<div id="input">
Lorem Ipsum Dolor Sit
</div>
哪有我選擇字符0-7
,以便選擇:
<div id="input">
[Lorem I]psum Dolor Sit
</div>
我想設置setStart
和setEnd
會工作,但我只能從0-1
設置它。
我可以選擇節點內的文本,而不是節點本身嗎?
你可以使用你的函數來選擇整個HTML。然後使用正則表達式來解析你想要的字符串。 – geniuscarrier 2013-03-01 18:09:39
不,我需要通過window.getSelection()實際選擇瀏覽器中的文本。setRange()' – Charlie 2013-03-01 18:10:21