我有以下 html 结构,我想选择底层 pre 中的文本:
<span>[Select text 1]</span>
<pre class="selectme">
Text 1 goes shere
</pre>
<span>[Select text 2]</span>
<pre class="selectme">
Text 2 goes here
</pre>
我的javascript:
jQuery.fn.selectText = function(){
var doc = document;
var element = this[0];
console.log(this, element);
if (doc.body.createTextRange) {
var range = document.body.createTextRange();
range.moveToElementText(element);
range.select();
} else if (window.getSelection) {
var selection = window.getSelection();
var range = document.createRange();
range.selectNodeContents(element);
selection.removeAllRanges();
selection.addRange(range);
}
};
$(function() {
$('span').click(function() {
$('.selectme').selectText();
});
});
现在发生了什么:如果我点击第二个跨度,第一个代码被选中。应该是第二个 我如何在不使用 ID 的情况下实现这一目标?
最佳答案
使用 $.next()
获取下一个元素。
$('span').click(function() {
$(this).next().selectText();
});
关于javascript - 如何在几个课前选择文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34318416/