我想如果有一種方法可以通過點擊文本中的任何位置來從textarea中選取任何一個句子。Javascript在textarea中選擇一個句子
我沿着 的思路 - 首先,獲得當前光標位置(我知道如何) - 第二,莫名其妙地找到以前的句點的位置和下一個句號 (如何?) - 採取一切內容在兩個fullstops內。 (怎麼樣?)
或者有一個簡單的方法來做到這一點?
我想如果有一種方法可以通過點擊文本中的任何位置來從textarea中選取任何一個句子。Javascript在textarea中選擇一個句子
我沿着 的思路 - 首先,獲得當前光標位置(我知道如何) - 第二,莫名其妙地找到以前的句點的位置和下一個句號 (如何?) - 採取一切內容在兩個fullstops內。 (怎麼樣?)
或者有一個簡單的方法來做到這一點?
我假設你已經知道有關處理插入位置之前獲取內容/插入符之後,所以這裏是一個僞代碼的解決方案:
我在開始工作之前,其他人回答是因爲我對它很感興趣。這是我的工作。您可能可以將您的作品的基礎與其他建議相結合:
<html>
<script type="text/javascript">
function getsentence(){
var ta = document.getElementById("ta");
var cursor = ta.selectionStart;
var text = ta.value;
//Find the beginning
var start;
for(var i = cursor; i > 0; i--){
if(text.charAt(i) === "."){
start = i+2;
break;
}
start = 0;
}
//Find end
var end;
for(var i = cursor; i < text.length; i++){
if(text.charAt(i) === "."){
end = i+1;
break;
}
end = text.length;
}
alert(text.substring(start, end));
}
</script>
<body>
<textarea id="ta" rows="10" cols="50" onclick="getsentence()">
This is a sample. Here is sentence two. Here is sentence three. And now on to number four.
</textarea>
</body>
</html>