gpt4 book ai didi

javascript - 使用链接多次选择文本

转载 作者:行者123 更新时间:2023-12-02 16:24:41 24 4
gpt4 key购买 nike

我在网上找到了以下代码,效果很好。我想在同一页面上的多个元素上使用它,但不知道如何执行此操作。我可以让第一个工作,但不能让第二个工作。

有人可以帮忙吗?

谢谢

约翰

Javascript:

    function SelectText(element) {
var doc = document
, text = doc.getElementById(element)
, range, selection
;
if (doc.body.createTextRange) {
range = document.body.createTextRange();
range.moveToElementText(text);
range.select();
} else if (window.getSelection) {
selection = window.getSelection();
range = document.createRange();
range.selectNodeContents(text);
selection.removeAllRanges();
selection.addRange(range);
}
}

document.onclick = function(e) {
if (e.target.className === 'select') {
SelectText('some_text');
}
};

HTML:

<span id ='some_text'>Text to select </span><span class='select'>select</span>

<span id ='more_text'>More text to select</span><span class='select'>select</span>

最佳答案

因为你调用具有相同参数的函数。

SelectText('some_text');

无论您点击哪个 class="select",“要选择的文本”都会被选中。

试试这个代码:

function SelectText(element) {
var doc = document
, text = doc.getElementById(element)
, range, selection;
if (doc.body.createTextRange) {
range = document.body.createTextRange();
range.moveToElementText(text);
range.select();
} else if (window.getSelection) {
selection = window.getSelection();
range = document.createRange();
range.selectNodeContents(text);
selection.removeAllRanges();
selection.addRange(range);
}
}

document.onclick = function(e) {
if (e.target.className === 'select') {
SelectText(e.target.getAttribute('data-id'));
}
};

并更改 HTML:

<span id ='some_text'>Text to select </span><span class='select' data-id="some_text">select</span>

<span id ='more_text'>More text to select</span><span class='select' data-id="more_text">select</span>

关于javascript - 使用链接多次选择文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28783029/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com