<script language="javascript">
function show_div(){
var obj_div=document.getElementById("starlist")
obj_div.style.display=(obj_div.style.display=='none')?'block':'none'
}
function hide_div(){
var obj_div=document.getElementById("starlist")
obj_div.style.display=(obj_div.style.display=='none')?'block':'none'
}
</script>
<a href="javascript:show_div()" >显示/展开</a>
<div id="starlist">
内容<br/>
内容<br/>
内容<br/>
内容<br/>
</div>
这样就可以实现
追问
用jQuery实现,该怎么实现?就是不能弹出的那种,就要一个点击了之后就在下方显示的那种,谢谢!
回答
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gbk" />
<title>StripingTable</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
<!--
$(document).ready(function(){ })
function changeDisplay(){
var helloDivObj = $("#helloDiv")
var buttonObj = $("#btnDisplay")
var val = buttonObj.attr("value")
if(val=="隐藏"){
helloDivObj.hide()
buttonObj.attr("value","显示")
}else{
helloDivObj.show()
buttonObj.attr("value","隐藏")
}
}
-->
</script>
</head>
<body>
<input id="btnDisplay" type="button" value="隐藏" onclick="changeDisplay()"/>
<div id="helloDiv">
Hello,everyone<p></p>
Hello,everytwo<p></p>
Hello,everythree<p></p>
</div>
</bdoy>
</html>
思路应该是一个从0%到100%的动画展开的效果,大概需要写0%,50%,100%三个样式。 弹窗的css代码大概是:position: fixedz-index: 2000left: 0top: 0这样弹窗的左上角原点在页面最左上角,如果要调整位置要用CSS变换特效(transform)的平移translate函数达到目的: translate(x, y)(长度值或者百分比):在水平方向、垂直方向平移元素。 translateX(value):水平方向平移。 translateY(value):垂直方向平移。 scale(x, y)、scaleX(value)、scaleY(value):在水平方向、垂直方向或者两个方向上缩放元素。 rotate()、rotateX()、rotateY()、rotateZ():rotate支持3D效果,可在x、y、z轴上旋转元素。 skew()、skewX()、skewY():在水平方向、垂直方向或者两个方向倾斜一定的角度。 另外弹窗展开的动画要用到css3的动画属性: animation-delay:设置动画开始前的延迟时间。 animation-direction:设置动画循环播放的时候是否方向播放,包含normal和alternate两个值。 animation-duration:设置动画播放持续的时间。 animation-interacion-count:设置动画的播放次数,可以为具体数据或者无限循环关键字infinite。 animation-name:指定动画名称。 animation-play-state:允许动画暂停和重新播放,包含running、paused。 animation-timing-function:指定如何计算中间动画值,简单的话,可以这么做,用JSfunction opencat(cat){
if(document.getElementById(cat).style.display=="none"){
document.getElementById(cat).style.display=""
}
else {
document.getElementById(cat).style.display="none"
}
}
然后在要收缩菜单的按钮或链接上这么做 比如超连接
<a id="menu1" href="#" style="display:block" onclick="opencat('list1')">
下面紧跟着的是展开后的目录内容,可以是Table,也可以是DIV
<table id="list1">
<tr><td>111111</td></tr>
<tr><td>222222</td></tr>
<tr><td>33333</td></tr>
<tr><td>4444444</td></tr>
<tr><td>5555555</td></tr>
</table>