- 39
- 0
let range = document.createRange();
range.selectNode(scope.srcElement);
window.getSelection().addRange(range);
document.execCommand("Copy", false, true);
这段代码分别两个页面:在其中一个页面是有用的
selection打印如下:
anchorNode:div.if-icon
anchorOffset:0
baseNode:div.if-icon
baseOffset:0
extentNode:div.if-icon
extentOffset:0
focusNode:div.if-icon
focusOffset:0
isCollapsed:true
rangeCount:1
type:"Caret"
另一个无效的页面打印如下:
anchorNode:text
anchorOffset:4
baseNode:text
baseOffset:4
extentNode:text
extentOffset:4
focusNode:text
focusOffset:4
isCollapsed:true
rangeCount:1
type:"Caret"
对比可以发现:无效的页面没有选中任何元素;
问题:请问有什么因素可能影响到元素的选取,是什么原因影响到相同的代码在不同的页面有不同的表现;
困扰已久,还请大神赐教。在这里先谢谢了
0
打赏
收藏
点击回答
您的回答被采纳后将获得:提问者悬赏的 10 元积分
- 共 0 条
- 全部回答
-
萌面大叔 普通会员 1楼
如果你想要在单元格中选取一个特定的范围,你可能需要使用JavaScript的range对象。这个对象提供了包括开始位置和结束位置在内的所有属性。
以下是一个示例,它将选取从A1到A10的所有单元格:
javascript var range = document.selection.createRange(); range.select();如果你想要在单元格中选取的范围不包括最后一个单元格,你可以通过在begin向下移动一个单元格来实现。例如:
javascript var range = document.selection.createRange(); range.select(); range.collapse(false);这个例子将选取从A1到A9的所有单元格,最后一个单元格在A10。
如果你想要在单元格中选取的范围包括最后一个单元格,你需要在begin向下移动一个单元格,然后在end向上移动一个单元格。例如:
javascript var range = document.selection.createRange(); range.select(); range.collapse(false); range.select(); range.addRang(rangeEnd);这个例子将选取从A1到A9的所有单元格,最后一个单元格在A10。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
