gpt4 book ai didi

javascript - 仅从一个 div 中获取选定的文本

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:18:30 24 4
gpt4 key购买 nike

我有一个包含许多表格和 div 的页面。其中一个带有一些文字。页面在此 div 之后也有一个 url。

需要:- 如果用户从 div id = "comment"中选择文本(div 内的文本和另一个 div 内的文本到此 div),然后在按下 url 后仅使用此文本(无标签)获得警报。- 如果用户选择的文本不是来自 div(文本不在 div 内)- 什么也不做。

我已经尝试使用 CSS 使页面中的另一个 DIV 和表格无法选择(-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none; -o-user-select: none;user-select: none;"但这不是我正在搜索的方式...需要 javascript。

<html>
<head><title>1</title></head>
<body>
<script type="text/javascript">

function getSelectedval(){

var txt = '';
if (window.getSelection) {
txt = window.getSelection();
} else if (document.getSelection) {
txt = document.getSelection();
} else if (document.selection) {
txt = document.selection.createRange().text;
}
alert(txt);
}
</script>

<div>hello my friend</div>
<br/>
<div id="comment">here is just a some text for testing <div id="text"><strong>this div inside div</strong></div> this selected value</div>
<a href="javascript:getSelectedval()">url</a>
</body>
</html>

谢谢

最佳答案

function select() {

var flag = 0;
sel = window.getSelection();
for (var i = 0; i < sel.rangeCount; i++) {
var s = sel.getRangeAt(i).startContainer.parentNode.id;
var e = sel.getRangeAt(i).endContainer.parentNode.id;
if (s == "a") flag = 1;
if (flag = 1 && e == "a" || e == "child") flag = 2;
}

if (flag == 2) alert(sel);

}

document.getElementById("btn").addEventListener("click", function () {
select();
});

http://jsfiddle.net/gRYQR/2/

关于javascript - 仅从一个 div 中获取选定的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18529530/

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