3

在我的网页中,我使用了一个 iframe 控件,它位于更新面板中,它将每 4 秒刷新一次,并且焦点设置为 iframe 中的文本框之一。我想保持页面的滚动位置,但每 4 秒滚动位置将转到焦点文本框。

我用过MAintainScrollpositononPostBack选项

并遵循javascript代码

function scroll()
      {
      var obj = document.getElementById("Form1"); 
      obj.scrollTop = obj.scrollHeight;
      }

谁能解释一下如何摆脱这个问题?

提前致谢。

4

2 回答 2

0

最简单的答案是在文本框更新时不要将焦点设置到文本框,这意味着 scoll 位置根本不会改变,除非您使用的某些代码仍在将焦点设置到屏幕外元素。

如果更新时必须在文本框上设置焦点,则保存滚动位置并恢复它。

var doc = document.documentElement, body = document.body;
var left = (doc && doc.scrollLeft || body && body.scrollLeft || 0);
var top = (doc && doc.scrollTop  || body && body.scrollTop  || 0);

//update your text box and set focus here

window.scrollTo(left, top);
于 2013-04-29T17:55:52.090 回答
-1

检查以下链接中的代码

http://medikola.blogspot.in/2013/05/script-for-maintaing-scroll-position.html

于 2013-10-07T11:27:25.237 回答