如何使用java脚本滚动到富文本框中的指定行
How can I scroll to a specified line in a rich text box using java script
我有一个div
,其中有许多文本行。div是高度限制的,因此我有一个scroll
。是否有一种方法在java script
滚动到指定的行。
如果是在html
页,我总是可以用书签,如何在java脚本的帮助下为富文本框或任何html container
做到这一点。
任何帮助都非常感谢。
Nandish
这里的问题是"线"的概念。由于您在浏览器中绘制了一个具有给定宽度(可能是动态的)的框,并且其中有文本,因此行取决于换行。
例如,文本:"hello world, I need my pizza now"如果宽度非常小,则为两行;如果宽度足够大,则为单行。
我的意思是,"行"是一个相对于换行本身的概念,所以即使计算div内的行也是不可能的。
如果你的行是由用户定义的,用换行和回车,或者用
或者其他什么,这是不同的,但是如果行是由换行生成的,这发生在呈现时,你不知道它是如何发生的。
如果你有一个固定的字体大小,你可以推测行数,通过一个简单的分割框的高度/字体大小+行间距。
然而,如果你的文本很丰富,它可以包含图像等,这是行不通的。
另一个可能的解决方案是使用getClientRects(这对我有效)
https://developer.mozilla.org/en/DOM/element.getClientRects返回文本矩形对象的集合:
http://help.dottoro.com/ljgupwlp.php希望这对你有帮助,我以前遇到过这个问题两次,它不是一个简单的函数调用,你应该理解什么是行,换行,客户端,文本矩形,字体…
祝你好运!
如果您指的是<div contenteditable="true">
,您可以试试:http://jsfiddle.net/cMMy5/.
基本上是div的scrollTop
属性。
$div = $('div');
$('button').click(function() {
$div.get(0).scrollTop = 10;
});
相关文章:
- 借助asp.net验证或java脚本对多个文本进行验证
- html或java脚本代码在硬盘中创建一个文本文件
- 在Asp.net的TextBox中插入所需文本的java脚本代码
- java脚本:交换技术,添加随机文本
- 如何使用Java在Selenium WebDriver的隐藏字段中键入一些文本
- 阅读java脚本中的文本
- 如何通过java脚本限制粘贴文本框(Aspx.page)中的整数或字符值
- 如何在Java程序中读取JavaScript输出文本
- 如何将从 JavaScript 返回的文本值保存到 Java 中的字符串变量
- 使用 Java 脚本获取 HTML 正文中所有文本框的名称和 ID
- Java 程序文本文件问题
- 打开任何文本/文档文件进行编辑,使用Javascript/DOJO/或基于框架的点击事件和Java进行编辑
- 如何在java脚本中获取节点内部文本
- 在java中获取带有硒的悬停文本
- 清除文本框,但使用 Java 脚本给出错误
- 如何在 Rails 应用程序中格式化 Java 脚本中的文本
- 如何从JSP页面获取Java脚本中的组合框文本
- 如何通过java或javascript在客户端打印出任何文本内容
- 使用 java 脚本验证 html 中的文本区域
- 文本框更改事件 - Java 脚本