栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

JavaScript 选择元素中的文本(类似于用鼠标突出显示)

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JavaScript 选择元素中的文本(类似于用鼠标突出显示)

Javascript

function selectText(node) {    node = document.getElementById(node);    if (document.body.createTextRange) {        const range = document.body.createTextRange();        range.moveToElementText(node);        range.select();    } else if (window.getSelection) {        const selection = window.getSelection();        const range = document.createRange();        range.selectNodeContents(node);        selection.removeAllRanges();        selection.addRange(range);    } else {        console.warn("Could not select text in node: Unsupported browser.");    }}const clickable = document.querySelector('.click-me');clickable.addEventListener('click', () => selectText('target'));<div id="target"><p>Some text goes here!</p><p>Moar text!</p></div><p >Click me!</p>

jQuery(原始答案)

我已经在此线程中找到了解决方案。我能够修改给定的信息,并将其与jQuery混合使用,以创建一个功能强大的函数来选择任何元素中的文本,而与浏览器无关:

function SelectText(element) {    var text = document.getElementById(element);    if ($.browser.msie) {        var range = document.body.createTextRange();        range.moveToElementText(text);        range.select();    } else if ($.browser.mozilla || $.browser.opera) {        var selection = window.getSelection();        var range = document.createRange();        range.selectNodeContents(text);        selection.removeAllRanges();        selection.addRange(range);    } else if ($.browser.safari) {        var selection = window.getSelection();        selection.setbaseAndExtent(text, 0, text, 1);    }}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/415908.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号