6
我創建了一個Range對象,然後將此範圍添加到選擇是否可以將Range對象設置爲「向後選擇」?
window.getSelection().addRange(myRange);
如何設置選擇方向? 我的意思是可以使用anchorNode
,anchorOffset
,focusNode
和focusOffset
選擇的屬性來檢查的方向。
我創建了一個Range對象,然後將此範圍添加到選擇是否可以將Range對象設置爲「向後選擇」?
window.getSelection().addRange(myRange);
如何設置選擇方向? 我的意思是可以使用anchorNode
,anchorOffset
,focusNode
和focusOffset
選擇的屬性來檢查的方向。
您可以在支持Selection
對象的extend()
(MDN)方法的瀏覽器上執行此操作。 Mozilla,WebKit和Opera支持它; IE不支持版本11. extend()
已被添加到HTML Editing APIs spec,因此它可能尚未出現在IE中。
下面是一個例子函數:
function selectRangeBackwards(range) {
if (typeof window.getSelection != "undefined") {
var sel = window.getSelection();
if (typeof sel.extend != "undefined") {
var endRange = range.cloneRange();
endRange.collapse(false);
sel.removeAllRanges();
sel.addRange(endRange);
sel.extend(range.startContainer, range.startOffset);
}
}
}
IE10不支持擴展()方法。 – Inez
@ Inez:是的。他們忽略了[我的錯誤報告](https://connect.microsoft.com/IE/feedback/details/737106/implement-missing-extend-method-of-selection)。 –
@TimDown我剛剛在Mircrosoft EDGE中測試了這種方法,它確實有效。可能,他們最終實現了extend()方法。 – Kersh