Chinaunix首页 | 论坛 | 博客
  • 博客访问: 925483
  • 博文数量: 264
  • 博客积分: 10107
  • 博客等级: 上将
  • 技术积分: 2455
  • 用 户 组: 普通用户
  • 注册时间: 2007-05-09 16:34
文章分类

全部博文(264)

文章存档

2012年(1)

2011年(11)

2010年(128)

2009年(82)

2008年(42)

我的朋友

分类: 系统运维

2010-09-09 19:07:02

document.body.scrollTop值为0的解决方法
2007年02月08日 星期四 下午 02:44
做页面的时候可能会用到位置固定的层,读取document.body.scrollTop来设置层的位置,像这样,

window.onscroll=function () {
    var oFix=document.getElementById("divfix");
    oFix.style.top=document.body.scrollTop+"px";
    }


可是怎么没有达到预期效果呢,输出document.body.scrollTop的值一看,一直都是0.原来是DTD的问题,要是页面直接用开头的话就没有问题了.但是要符合web标准,DTD当然是不能少的.使用DTD时用document.documentElement.scrollTop代替document.body.scrollTop就可以了

window.onscroll=function () {
    var oFix=document.getElementById("divfix");
    oFix.style.top=document.documentElement.scrollTop+"px";
    }
--------------------------------------------------------------------

javascript 全屏显示和iframe滚动

最近做个 简单的触摸屏程序,想在客户机上直接用ie打开窗口,不想再开发客户端的东西,就想办法把ie多余的东西全部屏蔽掉,代码如下:

在触摸屏上最好是把scrollbar都给彻底屏蔽掉,方法是:

在body中添加:style="OVERFLOW-Y:hidden;OVERFLOW-X:hidden;CURSOR:hand" 就可以了

如果是iframe,则 frameBorder="0" scrolling="no"

在页面中签入iframe,改变src,显示不同的页面,效果很不错,所有的scrollbar都屏蔽了,那滚频怎么办呢?

下面代码就可以解决掉

var currentpos,timer;

var direct,move;

function initialize(dir,m)

{ direct=dir; move=m; timer=setInterval('scrollwindow()',100); }

function sc()

{ clearInterval(timer); }

function scrollwindow()

{ currentpos=iframe.document.body.scrollTop;

 if(direct=="up")

 { iframe.document.body.scrollTop=iframe.document.body.scrollTop-move; }

else

 { iframe.document.body.scrollTop=iframe.document.body.scrollTop+move; }

}

以上代码在ie 6上测试通过

阅读(1750) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~