两种解决方案:
方案1:多个标签,下面的DIV只需要一个,每切换到一个标签通过ajax获取相应数据,然后填充到div中,这个因为涉及到ajax你可能不会,所以跳过,用下一个
文案2:标签与下面的DIV一一对应,DIV默认先全部隐藏,切换到哪个标签就显示对应的DIV。
先来样式表
<style type="text/css">a{border:1px solid #f00margin:10pxpadding:10px}
div.show{display:noneborder:1px solid #00fpadding:20pxmargin:20px}
</style>
再来html
<p><a>标签1</a><a>标签2</a><a>标签3</a>
</p>
<div class="show" id="show0">内容1</div>
<div class="show" id="show1">内容2</div>
<div class="show" id="show2">内容3</div>
JS脚本
$("p a").mouseover(function () {$(".show").hide()
$("#show" + $(this).index()).fadeIn(500)
})
我们使用移动端时可以通过触屏手势左右滑动来切换TAB栏目,我们说的TAB一般由导航条和TAB对应的内容组成,切换导航条上的标签同时标签对应的内容也会跟着切换。我们准备一个TAB导航#pagenavi,里面包含TAB导航要切换的四个导航按钮,然后是切换的主体内容#slider,这里应该放置四个li与导航按钮对应,内容自定义。
由于是移动端应用,我们加载zepto.js,zepto就是体积小的jquery。然后需要加载触屏滑动插件touchslider.js。
接下来我们就直接调用TouchSlider,通过设置绑定tab,滑动方向、速度、时间等信息实现内容切换,请看详细代码:
<script type="text/javascript">
var page='pagenavi'
var mslide='slider'
var mtitle='emtitle'
arrdiv = 'arrdiv'
var as=document.getElementById(page).getElementsByTagName('a')
var tt=new TouchSlider({id:mslide,'auto':'-1',fx:'ease-out',direction:'left',speed:600,timeout:5000,'before':function(index){
var as=document.getElementById(this.page).getElementsByTagName('a')
as[this.p].className=''
as[index].className='active'
this.p=index
var txt=as[index].innerText
$("#"+this.page).parent().find('.emtitle').text(txt)
var txturl=as[index].getAttribute('href')
var turl=txturl.split('#')
$("#"+this.page).parent().find('.go_btn').attr('href',turl[1])
}})
tt.page = page
tt.p = 0
for(var i=0i<as.lengthi++){
(function(){
var j=i
as[j].tt = tt
as[j].onclick=function(){
this.tt.slide(j)
return false
}
})()
}
</script>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)