打印

关于从数据库读取数据后滚屏的问题

请问用c#+asp.net做一个 每隔一段时间就自动从数据库读取记录(记录可能不断在更新中)并满屏且由下往上滚屏显示的东东 容易吗?

从数据库读取数据不难,但是定时读取新数据的时候还要考虑此时所有数据是否均已经滚出屏幕里,要怎么操作呢?有人推荐用javascript,但我不大熟悉,有达人能指点一下吗?

[ 本帖最后由 oldhen 于 2008-6-30 09:20 编辑 ]
下面这段代码为什么我复制到DW里,运行后不滚屏啊?
复制内容到剪贴板
代码:
<script language="javascript">
var currentpos,timer;
function initialize(){
    timer = setInterval("scrollwindow()",80);
}
function sc(){
    clearInterval(timer);
}
function scrollwindow(){
    currentpos=document.body.scrollTop ;
    window.scroll(0,++currentpos);
    if(currentpos!=document.body.scrollTop)
        sc();
}
document.onmousedown=sc;
document.ondblclick=initialize;
</Script>
<body onload="initialize();">
d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d
<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<
br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<b
r>d<br>
</body>
为什么啊~~~~~~~~
请勿把<br>拆开

 提示:您可以先修改部分代码再运行
[ 本帖最后由 caiying2007 于 2008-6-30 15:25 编辑 ]

TOP

还在为头像烦恼?还在为不能关注好友动态烦忧?快来蓝色理想家园吧!
如果要让最后一行也滚出顶部,如何实现呢?

TOP

这个代码同样有
http://bbs.blueidea.com/thread-2867775-1-1.html
所列出的问题。
Div之家__专业Div+CSS技术站点 divhome.com

TOP

回复 oldhen 在 5# 的帖子

this?

 提示:您可以先修改部分代码再运行

TOP

谢谢2位。

滚动的数据我是从数据库读取的,每隔一段时间都会重新读取数据库里的数据来滚屏显示。假设数据已经读取到了,那么我要如何判断屏幕文字是否已经完全滚出屏幕呢(只有文字完全滚玩,下一次滚屏才用最新的数据)?以什么参数来判断,插在哪里好呢?

TOP



 提示:您可以先修改部分代码再运行

TOP

这么热心的版主,赞一个。

但是我在插入数据库时读不到数据,麻烦帮我看一下好不,是不是我这段读取数据的那段有问题(这是我在论坛里找到)?我在<onload>里调用getdb()主要是为了测试是否读取到数据,实际使用中我仍然想让onload = "startScroll()",可行吗?

 提示:您可以先修改部分代码再运行
[ 本帖最后由 oldhen 于 2008-7-1 16:29 编辑 ]

TOP

顶  顶

TOP

MS:不行
document.write("<table border=\"1\" style=\"border:1px solid;\">");
会重写页面,原来的文档(包括HTML和JS等)被清除
test:

 提示:您可以先修改部分代码再运行

TOP

不过这样操作,“test”不会滚动啊

TOP

不大明白楼主的意图和caiying为什么使用document.write的意图。

为什么拿整个body滚动呢?是不是这个页面本身就放在一个iframe中?如果是这样的话,那只要把caiying的那些document.write改成刷新整个页面的就行了~~
子叶:子乌的叶子
帅哥们,美女们,新的一年终于来了,祝贺你们...终于又老了一岁~

TOP

回复 Sheneyan 在 14# 的帖子

我只是把LZ在10#的JS代码“HTML化”(假设访问数据库成功后的执行状态)

TOP

回复 oldhen 在 13# 的帖子

getdb() 一旦成功执行,即会:
document.write("<table border=\"1\" style=\"border:1px solid;\">");
重写页面,原来的JS(包括startScroll()等)不存在了,当然不会滚动阿--(这个getdb() 访问数据库的功能没有研究,但是输出数据用document.write不好)

TOP

回复 caiying2007 在 16# 的帖子

我感觉直接把这个页面放iframe里,然后使用你的方法,在滚动完成之后,刷新整个屏幕就可以搞定了-_-

个人感觉刷新iframe占用的内存比一个xmlhttp在那不停的骚扰服务器要小很多
子叶:子乌的叶子
帅哥们,美女们,新的一年终于来了,祝贺你们...终于又老了一岁~

TOP

回复 Sheneyan 在 17# 的帖子

是的,iframe是被控的(通过缓存只下载一次),而xmlhttp是失控的(如果连续刷新,就不停访问服务器),所以非必须(例如搜索/动态信息)不用--个人看法

TOP

也许研究下 新浪-体育-直播 页面,会对你有所启发帮助:
http://sports.sina.com.cn/live/

TOP

数据可以读取出来了(我用aps.net里的datalist来表现);
滚动也可以了(按照caiqing2007的指导);
但怎么很好的结合呢?架设将读取的数据放在iframe里,那么刷新页面时怎么让它再去读取数据呢?

TOP