Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery-如果光标位于文本字段的开始/结束位置_Javascript_Jquery_Textarea_Selection_Textselection - Fatal编程技术网

Javascript Jquery-如果光标位于文本字段的开始/结束位置

Javascript Jquery-如果光标位于文本字段的开始/结束位置,javascript,jquery,textarea,selection,textselection,Javascript,Jquery,Textarea,Selection,Textselection,我有一个文本区域,我想检查光标是在开始还是在结束(我不需要当前位置)。 有人知道一个简单的jQuery解决方案吗 提前谢谢 彼得是的,用这个。 需要更多信息吗?带着更多的问题回到这里:) 更新 与插件关联的原始日志已关闭 多亏了wayback机器的强大功能,您仍然可以查看它 天啊,我喜欢那个网站。假设你指的是而不是文本区域,这里有一个非jQuery解决方案(你仍然可以在jQuery代码中使用)。几乎可以肯定,它的代码比jQuery插件少 2011年11月12日更新 话虽如此,我只是为他的任务而

我有一个文本区域,我想检查光标是在开始还是在结束(我不需要当前位置)。
有人知道一个简单的jQuery解决方案吗

提前谢谢
彼得

是的,用这个。

需要更多信息吗?带着更多的问题回到这里:)

更新
与插件关联的原始日志已关闭

多亏了wayback机器的强大功能,您仍然可以查看它


天啊,我喜欢那个网站。

假设你指的是
而不是文本区域,这里有一个非jQuery解决方案(你仍然可以在jQuery代码中使用)。几乎可以肯定,它的代码比jQuery插件少

2011年11月12日更新

话虽如此,我只是为他的任务而开发的,它确实比下面的代码要大

var textInput = document.getElementById("your_id"), val = textInput.value;
var isAtStart = false, isAtEnd = false;
if (typeof textInput.selectionStart == "number") {
    // Non-IE browsers
    isAtStart = (textInput.selectionStart == 0);
    isAtEnd = (textInput.selectionEnd == val.length);
} else if (document.selection && document.selection.createRange) {
    // IE <= 8 branch
    textInput.focus();
    var selRange = document.selection.createRange();
    var inputRange = textInput.createTextRange();
    var inputSelRange = inputRange.duplicate();
    inputSelRange.moveToBookmark(selRange.getBookmark());
    isAtStart = inputSelRange.compareEndPoints("StartToStart", inputRange) == 0;
    isAtEnd = inputSelRange.compareEndPoints("EndToEnd", inputRange) == 0;
}

alert("At start: " + isAtStart + ", at end: " + isAtEnd);
var textInput=document.getElementById(“您的id”),val=textInput.value;
var isAtStart=false,isattend=false;
如果(文本输入的类型。选择开始==“数字”){
//非IE浏览器
isAtStart=(textInput.selectionStart==0);
IsAttend=(textInput.selectionEnd==val.length);
}else if(document.selection&&document.selection.createRange){

//IE非常好!谢谢你的快速回答!别担心@Peter,我希望插件能帮上忙:)你能给我举个小例子如何使用吗?页面“”不幸关闭了:(@Peter-查看我的更新。你可以使用Wayback机器查看博客帖子。Wayback机器,好主意^^。谢谢!你是指
还是
?我的意思是。textbox是当前的词吗?我想是的。我从来都不确定人们的意思。这个答案到2016年1月仍然有效吗?@Jessica:当然,而且几乎肯定对你有效从
selectionStart
selectionEnd
开始的可预见的未来是。第二个分支仅适用于IE 8和更早版本,因此如果您不需要担心这些浏览器,可以删除。谢谢!您建议我支持IE 8和更早版本吗?@Jessica:这真的取决于您的受众,但一般来说我不这么认为,尤其是sin微软自己也有。