Javascript 在文本区域中查找光标的位置
为什么这个代码不起作用 您必须按文本区域上的TAB键 问题是,它不做/附加四个空格,并且在Chrome中默认浏览器操作切换到地址选项卡 想法?与问题相关,请尝试:Javascript 在文本区域中查找光标的位置,javascript,jquery,google-chrome,Javascript,Jquery,Google Chrome,为什么这个代码不起作用 您必须按文本区域上的TAB键 问题是,它不做/附加四个空格,并且在Chrome中默认浏览器操作切换到地址选项卡 想法?与问题相关,请尝试: $(function () { $("textarea").keydown(function (e) { if (e.keyCode == 9) { e.preventDefault(); var $this = $(this); var
$(function () {
$("textarea").keydown(function (e) {
if (e.keyCode == 9) {
e.preventDefault();
var $this = $(this);
var pos = $this[0].selectionStart;
$this.val($this.val().substring(0, pos) + " " + $this.val().substring(pos));
$this.setCursorPosition(pos + 4);
}
});
});
并添加来自post的JQuery
有关问题,请尝试:
$(function () {
$("textarea").keydown(function (e) {
if (e.keyCode == 9) {
e.preventDefault();
var $this = $(this);
var pos = $this[0].selectionStart;
$this.val($this.val().substring(0, pos) + " " + $this.val().substring(pos));
$this.setCursorPosition(pos + 4);
}
});
});
并添加来自post的JQuery
看一看看一看试试这个,我他妈的肯定能用 <form>
<textarea></textarea>
</form>
<script>
$(function(){
$("textarea").keydown(function(e){
if (e.which == 9){
$("textarea").append(" ");
return false;
}
});
});
</script>
我只是简单地将单词keyCode更改为,'因为单词keyCode是从jqueryui派生的。试试这个,我敢肯定它会起作用 <form>
<textarea></textarea>
</form>
<script>
$(function(){
$("textarea").keydown(function(e){
if (e.which == 9){
$("textarea").append(" ");
return false;
}
});
});
</script>
我只是简单地将单词keyCode更改为,'因为单词keyCode是从jquery ui派生的。要在jquery中操作文本区域选择和插入符号位置,我建议使用,它可以在所有主要浏览器中工作,并提供获取和设置插入符号/选择位置的方法,在插入符号位置插入内容等。您需要的代码是:
$("textarea").keydown(function(e) {
if (e.keyCode == 9) {
e.preventDefault();
$(this).replaceSelectedText(" ");
}
});
为了在jQuery中操作textarea选择和插入符号位置,我建议使用For来操作,它在所有主要浏览器中都可以使用,并提供获取和设置插入符号/选择位置、在插入符号位置插入内容等方法。您需要的代码是:
$("textarea").keydown(function(e) {
if (e.keyCode == 9) {
e.preventDefault();
$(this).replaceSelectedText(" ");
}
});
这是我能做到的最好的了,但我不能让它在Firefox或Chrome上运行。如果有人在Chrome工作的情况下按了文本区的选择文本按钮,请随时通知我
这是我能做到的最好的了,但我不能让它在Firefox或Chrome上运行。如果有人在Chrome正常工作的情况下按下文本区中的选择文本按钮,请随时通知我。观察:即使Stack Overflow的文本区(通常包含缩进代码)也不允许使用制表符。@genesis的可能重复:我不清楚。我还没有试着自己去做。但我的评论暗示这可能是不可行的。观察:即使是Stack Overflow的文本区域(通常包含缩进代码)也不允许使用制表符。@genesis的可能重复:我不太清楚。我还没有试着自己去做。但我的评论是,这可能是不可行的。这可能是因为append不是一个javascript字符串函数。尝试使用旧字符串=字符串+额外内容;但这会在末尾附加这些空格。我想让它切换到指针的实际位置,直到切换到我的地址栏tsandbox.phpcode.eu/g/81281.phpThats,因为javascript有一个错误。请查看更正。工作正常,但不是我想要的。它将tab追加到末尾,而不是实际的指针位置,这可能是因为append不是javascript字符串函数。尝试使用旧字符串=字符串+额外内容;但这会在末尾附加这些空格。我想让它切换到指针的实际位置,直到切换到我的地址栏tsandbox.phpcode.eu/g/81281.phpThats,因为javascript有一个错误。请查看更正。工作正常,但不是我想要的。它在末尾附加了标签,而不是实际的指针位置。请再次检查我的代码,我再次做了一些修改,现在在所有浏览器中都可以正常工作。请再次检查我的代码,我再次做了一些修改,现在在所有浏览器中都可以正常工作。很好,我会查看它。谢谢你,我来看看。谢谢