是否可以将 Range 对象设置为“向后选择”?

发布于 2024-12-09 04:00:05 字数 242 浏览 0 评论 0原文

我创建一个Range对象,然后将此Range添加到选择中

window.getSelection ().addRange(myRange);

如何设置选择方向? 我的意思是可以使用选择的 anchorNodeanchorOffsetfocusNodefocusOffset 属性检查方向。

I create a Range object and then add this Range to selection

window.getSelection ().addRange(myRange);

How to set the selection direction?
I mean direction which can be checked using the anchorNode, anchorOffset, focusNode and focusOffset properties of selections.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

月亮是我掰弯的 2024-12-16 04:00:05

您可以在支持 的浏览器上执行此操作extend() (MDN)的方法选择对象。 Mozilla、WebKit 和 Opera 支持; IE 不包含版本 11。 extend() 已添加到 HTML 编辑 API 规范,因此它可能还会出现在 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);
        }
    }
}

You can do this on browsers that support the extend() (MDN) method of Selection objects. Mozilla, WebKit and Opera support it; IE does not up to and including version 11. extend() has been added to the HTML Editing APIs spec so it may yet appear in IE.

Here's an example function:

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);
        }
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文