100分求随机显示不同的层

chinadxp 2009-02-23 07:25:13
纯静态网页,想实现下面的功能,请各位高手帮忙。
主页面空间有限,但希望显示的内容还有一些。
比如:信息更新、问卷调查、图片显示、文字表述等。
因此,相把这些内容放在不同的div层里,比如div1层里放问卷调查内容,div2里放图片风光,div3里放信息更新,div4里放其他它文字表述内容……
打开主页面,随机显示div层,并且,每隔3分钟或更久的时间自动显示其他div的内容,比如:打开页面时显示的是div3信息更新内容,3分钟后,div3关闭,显示div1问卷调查内容。
最好不要页面刷新。

谢谢!
...全文
134 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
chinadxp 2009-02-24
  • 打赏
  • 举报
回复
看来,ie与firefox之间的兼容问题一下子也解决不了。
但主要功能已经实现,兼容问题留得以后再去寻找办法吧。
谢谢xinyung简洁的解决方案。
同时,也感谢各位朋友的帮助。
ocean_958 2009-02-24
  • 打赏
  • 举报
回复
帮忙顶,IE,火狐对于很多属性的默认参数是不一样的,建议LZ整个DHML的帮助看看,那个很有用的
zzxap 2009-02-24
  • 打赏
  • 举报
回复
<div id="div0" style="width:100px; height:50px; background-color:#CCCCCC">信息更新</div>
<div id="div1" style="width:100px; height:50px; background-color:#CCCCCC">问卷调查</div>
<div id="div2" style="width:100px; height:50px; background-color:#CCCCCC">图片显示</div>
<div id="div3" style="width:100px; height:50px; background-color:#CCCCCC">文字表述</div>
<script language="javascript">
var objs = [ "div0", "div1", "div2", "div3" ];
function show() {
hide();
var r = parseInt(Math.random() * 10) % 4;
document.getElementById(objs[r]).style.display = "";
setTimeout(show, 180000);
}
function hide() {
for(var i in objs)
document.getElementById(objs[i]).style.display = "none";
}
show();


liaoyunt07 2009-02-24
  • 打赏
  • 举报
回复
2楼的,正解
xinyung 2009-02-24
  • 打赏
  • 举报
回复
浏览器不同造成的,主要是你用的absolute,并不是说位置有很大出入,你把top、left设为0,ie与firefox下打开时肯定都是在0\0的位置,你可以试着改变一下显示方式,不用absolute看能否解决问题
chinadxp 2009-02-23
  • 打赏
  • 举报
回复
我在<title></title>中对div风格的定义里添加了margin, padding, border等:
<style type="text/css">
<!--
#div0 {
position:absolute;
width:330px;
height:270px;
z-index:1;
left: 360px;
top: 380px;
border: 0px solid;
margin:0;
padding:0;
}
但仍没有改变。
请问具体该如何改啊?
谢谢!

[Quote=引用 7 楼 uself 的回复:]
把margin的padding设置成固定的值,ie与firefox的默认值不一样的.
[/Quote]
杨哥儿 2009-02-23
  • 打赏
  • 举报
回复
还有边框的宽度和样式也不一样.
杨哥儿 2009-02-23
  • 打赏
  • 举报
回复
把margin的padding设置成固定的值,ie与firefox的默认值不一样的.
chinadxp 2009-02-23
  • 打赏
  • 举报
回复
感谢各位高手的帮助。
特别是xinyung兄的,基本满足了我的要求。
唯剩一点儿小问题,不知xinyung兄能不能进一步帮忙指点指点。
为了检验这种效果的浏览器兼容性,我用firefox打开发现,div位置与在ie下打开的有较大出入。
我在页面<title></title>对div进行了如下定义:
<style type="text/css">
<!--
#div0 {
position:absolute;
width:100px;
height:100px;
z-index:1;
left: 360px;
top: 380px;
}
#div1 {
position:absolute;
width:100px;
height:100px;
z-index:1;
left: 360px;
top: 380px;
}
#div2 {
position:absolute;
width:100px;
height:100px;
z-index:1;
left: 360px;
top: 380px;
}
#div3 {
position:absolute;
width:100px;
height:100px;
z-index:1;
left: 360px;
top: 380px;
}
-->
</style>

不知问题出在哪,该如何解决才能确保这些层在ie与firefox下打开时位置不变?
yang_zheng_2008 2009-02-23
  • 打赏
  • 举报
回复
2楼正解
zt735268255 2009-02-23
  • 打赏
  • 举报
回复
要是时间的话就用
var time=new getDate();
var min=time.getMinute();
if(min==3)
{
<要实现的代码>
}
zt735268255 2009-02-23
  • 打赏
  • 举报
回复
可以用FOR循环,带个参数,判断循环数是否=与参数,如果=与就显示,不=与就影藏
function show(id)
{
for(var i=1;i<(那要显示的层的数量);i++)
{
if(i==id)
{
document.getElementById(i).style.display="block";

}
else
{
document.getElementById(i).style.display="none";

}

}
}
xinyung 2009-02-23
  • 打赏
  • 举报
回复
<div id="div0" style="width:100px; height:50px; background-color:#CCCCCC">信息更新</div>
<div id="div1" style="width:100px; height:50px; background-color:#CCCCCC">问卷调查</div>
<div id="div2" style="width:100px; height:50px; background-color:#CCCCCC">图片显示</div>
<div id="div3" style="width:100px; height:50px; background-color:#CCCCCC">文字表述</div>
<script language="javascript">
var objs = [ "div0", "div1", "div2", "div3" ];
function show() {
hide();
var r = parseInt(Math.random() * 10) % 4;
document.getElementById(objs[r]).style.display = "";
setTimeout(show, 180000);
}
function hide() {
for(var i in objs)
document.getElementById(objs[i]).style.display = "none";
}
show();
</script>
shuieryin 2009-02-23
  • 打赏
  • 举报
回复
纯静态,要做到动态的要求,那是不可能滴

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧