繁体   English   中英

滚动到Javascript中的文本位置

[英]Scroll to a text position in Javascript

我有一个实时HTML编辑器,左侧有一个文本区域用于输入代码,右侧有一个“预览” DIV,用于包含输入代码的预览。 目前,在左窗格中编辑代码时,预览就在它的原处,因此,您正在编辑的代码部分通常不在预览的可见区域中(尤其是当涉及图像时)。

我的问题是如何使预览滚动显示当前正在编辑的代码部分?

这是我到目前为止的页面: http : //www.caerphoto.com/rtedit.html您会在源代码中注意到我有一个(当前未使用的)matchPreview()函数,该函数试图匹配预览的滚动位置。基于文本区域的滚动位置,但是显然如果涉及图像或大文本,则两个窗格不再匹配。

尝试使用标签代替克隆目标的div。

让我将您的任务分解为2个子任务:

  1. 当dom发生变化时得到通知,您可以像onsubtreemodified一样聆听dom的变化。

参见en.wikipedia.org/wiki/DOM_events

  1. 滚动到视图中

答案是scrollintoview方法:

参见www.quirksmode.org/dom/tests/scrollintoview.html

但是,这可能对您没有太大帮助,因为您将在每次更改textarea时更新整个html文档。 由于您无法获得光标在文本区域内的位置,因此可能不那么容易。

对不起,队友,最后我无解,但也许我的反省还是有帮助的。

祝好运!

当我在Firefox中尝试此操作时。 在预览中没有看到换行符; 这个对吗? 我也许可以提供帮助( 最近做了一些similsr ),但是如果删除了换行符,则无法提供帮助...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM