left的方法:
比如让class为menu的元素宽为300px,高100%的,设置left为-300px;在这期间可以加一个过渡transition:left 0.3s ...;
然后让class为menu active的元素设置 left设置为0就可以了 ,在这期间可以加一个过渡transition:left 0.3s ...;
然后可以通过Jquery的toggleClass('active')来实现切换
translate
比如让class为menu的元素宽为300px,高100%的,设置left为-300px;在这期间可以加一个过渡transition:left 0.3s ...;
然后让class为menu active的元素设置 transform:translate3d(-300px,0,0) ,在这期间可以加一个过渡transition:left 0.3s ...;
然后可以通过Jquery的toggleClass('active')来实现切换
这个过程中 需要注意 body需要overflow:hidden(不然会有滚动条,可设置overflow-x即可)
left 和 translate 最好用translate ,translate3d可以开启GPU硬件加速,性能会更好,体验会更流畅
我github有类似小组件样式
github: IFmiss
希望能解决你的问题
<script>function $(v){return document.getElementById(v)}
var x=0
function c(y){
$("a"+x).style.display = "none"
$("a"+y).style.display = ""
x=y
}
</script>
<a href="javascript:" onclick="c(0)">菜单一</a>
<a href="javascript:" onclick="c(1)">菜单二</a>
<div id="a0">这里是文字</div>
<div id="a1" style="display:none">这里是图片,自己写上<img src="图片地址"></div>
左侧右侧布局我没给你写,只写了图片、文字切换功能。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)