![]() |
1
213
有一个简单的方法可以让它工作 最 浏览器。
然而,由于一些浏览器的*怪癖,一个更具包容性的答案看起来更像这样
使用jQuery (设置侦听器,但不需要其他设置)
(借用
怪癖Chrome有一个奇怪的特性,焦点事件在光标移动到字段之前触发;这把我的简单解决方案搞砸了。解决此问题的两个选项:
另外,@vladkras指出,一些较旧版本的Opera在有空格的情况下计算长度时存在错误。为此,您可以使用一个大于字符串的巨大数字。 |
![]() |
2
185
Firefox已经将光标放在末尾,而字段已经有了值。IE正在强制将光标移到文本的开头。 我得出的解决办法如下:
|
![]() |
3
181
试试这个,它对我很有效:
要将光标移动到末尾,输入必须首先具有焦点,然后当值更改时,它将转到末尾。如果将.value设置为相同,则在chrome中不会更改。 |
![]() |
4
100
我也在准备
我把它做成了一个jQuery插件。(如果您不使用jQuery,我相信您仍然可以很容易地获得要点。) 我在IE6、IE7、IE8、Firefox 3.5.5、Google Chrome 3.0、Safari 4.0.4、Opera 10.00中进行了测试。 它在jquery.com上作为 PutCursorAtEnd plugin . 为方便起见,1.0版的代码如下:
|
![]() |
5
22
这个函数在IE9、Firefox 6.x和Opera 11.x中都适用 |
![]() |
6
20
https://css-tricks.com/snippets/javascript/move-cursor-to-end-of-input/
|
![]() |
7
17
我在chrome上尝试了以下方法,取得了很大的成功
快速概述: 它接受每个类关注的输入字段,然后将输入字段的旧值存储在变量中,然后将空字符串应用于输入字段。 然后等待1毫秒,再次输入旧值。 |
![]() |
8
11
易于理解的编辑或更改值时,请先放置焦点,然后设置值。
|
![]() |
9
11
https://codesandbox.io/s/peaceful-bash-x2mti
https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange
在其他js方法中
|
![]() |
10
7
否则光标的行为会很奇怪,我们需要它在末尾。
|
![]() |
11
5
如果需要从onFocus事件处理程序移动光标,则需要超时 |
![]() |
12
5
我很喜欢这个被接受的答案,但是它在Chrome中停止工作了。在Chrome中,要将光标移到末尾,需要更改输入值。解决办法如下:
|
![]() |
13
4
试试这个可以与香草JavaScript一起使用。
在Js中
|
![]() |
14
3
在jQuery中,这是
|
![]() |
15
3
+++++++解决方案+++++++
它适用于所有设备和浏览器!!!! |
![]() |
16
2
我刚在iOS中发现,设置
|
![]() |
17
2
|
![]() |
18
2
拿着一些答案。。生成单行jquery。
|
![]() |
19
1
如果输入字段只需要一个静态默认值,我通常使用jQuery执行此操作:
这似乎适用于所有浏览器。 |
![]() |
20
1
虽然这可能是一个有很多答案的老问题,但我遇到了一个类似的问题,没有一个答案是我想要的和/或解释得很差。selectionStart和selectionEnd属性的问题是它们不存在于输入类型number中(虽然问题是针对文本类型的,但我认为这可能会帮助其他需要关注其他输入类型的人)。因此,如果您不知道函数将关注的输入类型是否为类型号,则无法使用该解决方案。
这样,光标就位于输入元素的末尾。
为什么这样做有效?简单地说,当调用.focus()时,焦点将添加到输入元素的开头(这是这里的核心问题),而忽略输入元素中已经有值这一事实。但是,当输入的值发生更改时,光标将自动放置在输入元素中值的末尾。因此,如果您使用之前在输入中输入的相同值覆盖该值,则该值看起来将保持不变,但光标将移动到末尾。 |
![]() |
21
1
|
![]() |
22
1
|
![]() |
23
0
此代码的变体是…也可以使用!对于Firefox、IE、Safari、Chrome。。 在服务器端代码中:
在Javascript中:
|
![]() |
24
0
如果先设置值,然后设置焦点,光标将始终显示在末尾。
|
![]() |
25
0
我想把光标放在一个“div”元素的末尾,contenteditable=true,我得到了一个解决方案 Xeoncross code :
适用于大多数浏览器,请检查它,此代码将文本和焦点放在div元素(非输入元素)的文本末尾 https://jsfiddle.net/Xeoncross/4tUDk/ 谢谢,Xeoncross |
![]() |
26
0
我们可以这样称呼它:
我在safari(即Chrome、Mozilla)中使用它。在移动设备上,我没有尝试过这个。 |
![]() |
27
0
检查此解决方案!
|
![]() |
28
0
超级简单(您可能需要关注输入元素)
|
![]() |
29
-1
在文本区:
|
![]() |
30
-1
这里有一个 jsFiddle demo convert it to plain JavaScript 如果你需要的话。 在JavaScript中,最重要的部分是:
以下是来自JSFIDLE的代码,因此即使JSFIDLE消失,也会保留此答案:
|
![]() |
Softly · 单选按钮未按预期取值 1 年前 |
|
SlickRed · 我无法使用JS关注HTML元素 1 年前 |
![]() |
assembler · Nextjs没有处理发布请求 1 年前 |
|
BADRUM · 执行两个获取功能后,如何导航回页面? 1 年前 |
![]() |
Toniq · javascript为php保存多维数组 1 年前 |