我不确定我是否疯了或者这是否是 IE11 中的错误。
在 IE11 中打开此演示:http://jsfiddle.net/zdfubscf/1/
var $span = $('span'); $('input').on('keyup', function () { $span.html( this.scrollLeft + ', ' + this.scrollWidth + ', ' + this.selectionEnd ); });
开始输入内容。
- 当文本溢出时,您会注意到
scrollLeft
和scrollWidth
值(value)观永远不会改变。
<!DOCTYPE html>
设置正确。我是否缺少某些东西来获得正确的滚动值?
最佳答案
我也在寻找这个问题的解决方案。我花了一段时间才找到你的问题(并在寻找解决方案时进行了编辑)。
与此同时,我可以与您分享我发现的一个小解决方案。
在文本区域中使用以下 css 属性并将行数设置为 1。
<textarea id="demo1" cols="40" rows="1" style="white-space: nowrap; overflow: hidden;">Lorem ipsum dolor sit amet, vulputate molestie nec dui.</textarea>
这将允许您使用文本区域,就像它是文本类型的输入一样。 ScrollLeft 在文本区域中适用于 IE。
如果您碰巧在 IE>9 中找到了输入scrollLeft属性的替代方法,请分享! 我希望这个解决方法对您有所帮助。
关于javascript - 输入scrollLeft在IE11中永远不会改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26193755/