你这个逻辑有错误呀。 还有就是,你应该可以这样去实现吧。 给ID为test的控件绑定一个onchange事件,当值为1的时候,下一个控件调用focus()函数聚焦,这样可以吗?
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计制作、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的乐平网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
这里有一个内容要特别注意的那就是给标签的mouseover事件设置延迟,这样防止用户恶意的移动鼠标导致放送大量的请求而是服务器崩溃,用到setTimeout函数,主要用到已下的事件
1
$().each(function(){})
这个是个非常重要的遍历所有标签的好办法
2
mouseover事件,
还有就是关键的css样式编写,控制显示的样式,
复制代码
代码如下:
!DOCTYPE
HTML
PUBLIC
"-//W3C//DTD
HTML
4.0
Transitional//EN"
HTML
HEAD
TITLEtab
/TITLE
link
rel="stylesheet"
type="text/css"
href="css/tab.css"
script
type="text/javascript"
src="js/jquery-1.4.2.js"/script
script
type="text/javascript"
src="js/tab.js"/script
/HEAD
BODY
ul
id="ularea"
li
class="listli"标签1/li
li
标签2/li
li
标签3/li
/ul
div
class="divarea"内容1/div
div内容2/div
div内容3/div
/BODY
/HTML
接下来就是控制样式的css
复制代码
代码如下:
ul
,li
{
margin:0px;
padding:0px;
list-style:none;
}
li
{
float:left;
background-color:#66CC00;
margin-right:2px;
//这个是设置标签之间的间距
padding:5px;
border:1px
solid
white;
height:20px;
color:white;
}
.listli
{
background-color:#663333;
border:1px
solid
#663333;
}
div
{
clear:left;
width:300px;
height:100px;
background-color:#663333;
border-top:0px;
color:white;
display:none;
}
.divarea
{
display:block;
}
下来就是编写控制滑动的js
复制代码
代码如下:
//定义全局变量
var
timeout;
$(document).ready(function(){
//找到所有的li标签
$("li").each(function(index){
$(this).mouseover(function(){
//滑动门都要设置一个延迟时间,避免用户疯狂移动鼠标,导致服务器崩溃,这个很重要
timeout
=setTimeout(function(){
$("div.divarea").removeClass("divarea");
$("li.listli").removeClass("listli");
//
$("div").eq(index).addClass("divarea");
//另一种写法是:$(div:eq(index)).addClass("divarea");
$("div:eq("+index+")").addClass("divarea");
$("li").eq(index).addClass("listli");
},
320);
$(this).mouseout(function(){
clearTimeout(timeout);
});
});
});
});
$("#tab").tabs(".tabContent", {
tabs: "input"
});
试试把这上面的 tabs 功能定义为一个 function
例如
function tabs_run() {
....
}
然後在 click function 里面捕捉 event 完结时侯再次呼叫这个 tabs_run()
例如
$('#add').live('click', function() {
.....
tabs_run();
}
不过我疑惑了,你的 tabContent 没有设置 rel 或者 id… Tabs 是怎样侦测 index 的呢?
点击哪个 li 会 load 哪个 tabContent 呢?
本文实例讲述了jQuery简单tab切换效果实现方法。分享给大家供大家参考。具体如下:
script
src="js/jquery-latest.js"/script
SCRIPT
language=javascript
type=text/javascript
$(document).ready(function
()
{
$('.tabtitle
li').click(function
()
{
var
index
=
$(this).index();
$(this).attr('class',"tabhover").siblings('li').attr('class','taba');
$('.tabcontent').eq(index).show(200).siblings('.tabcontent').hide();
});
var
t
=
0;
var
timer
=
setInterval(function(){
if(
t
==
$('.tabtitle
li').length
)
t
=
0;
$('.tabtitle
li:eq('+t+')').click();
t++;
},
700)
})
/SCRIPT
div
class="maintab"
ul
class="tabtitle"
li
class="tabhover"a
href="#"选择标题1/a/li
li
class="taba"a
href="#"选择标题2/a/li
li
class="taba"a
href="#"选择标题3/a/li
li
class="taba"a
href="#"选择标题4/a/li
li
class="taba"a
href="#"选择标题5/a/li
/ul
div
class="tabcontent"
选择内容1
/div
div
class="tabcontent"
style="DISPLAY:
none"
选择内容2
/div
div
class="tabcontent"
style="DISPLAY:
none"
选择内容3
/div
div
class="tabcontent"
style="DISPLAY:
none"
选择内容4
/div
div
class="tabcontent"
style="DISPLAY:
none"
选择内容5
/div
/div
希望本文所述对大家的jQuery程序设计有所帮助。
style type="text/css"
.tab{width:300px;height:200px;border:1px solid #666}
.btn span{display:block; width:100px; float:left; text-align:center}
.btn span.select{background: #377bee; color: #fff}
.clear{clear:both;}
.switch ul{display: none}
.switch .block{display: block}
/style
div class="tab"
div class="btn"
span class="select"111/span
span222/span
span333/span
div class="clear"/div
/div
div class="switch"
ul class="block"
li11111111111111/li
li11111111111111/li
li11111111111111/li
li11111111111111/li
li11111111111111/li
/ul
ul
li22222222222222/li
li22222222222222/li
li22222222222222/li
li22222222222222/li
li22222222222222/li
/ul
ul
li33333333333333/li
li33333333333333/li
li33333333333333/li
li33333333333333/li
li33333333333333/li
/ul
/div
/div
script type="text/javascript" src="./js/jquery-1.7.2.min.js" /script
script type="text/javascript"
$(function(){
// 如果需要点击切换,将 mouseover 换成 click
$('.btn span').mouseover(function(){
$(this).siblings('span').removeClass('select');
$(".switch ul").eq($(this).addClass('select').index()).addClass('block').siblings('ul').removeClass('block');
})
})
/script
!DOCTYPE html
html lang="en"
head
meta charset="UTF-8"
titleDocument/title
script src="jquery-3.3.1.js"/script
style
.Tab{
}
.Tab span{
margin-right:10px;
cursor:pointer;
}
/style
/head
body
div class="Tab"
spanA1/span
spanB2/span
spanC3/span
/div
div style="display: none" class="tab1"
div
AA1
div style="display: none;margin-left: 100px;"
pAAA1/p
pAAA1/p
pAAA1/p
/div
/div
div
AA2
div style="display: none;margin-left: 100px;"
pAAA2/p
pAAA2/p
pAAA2/p
/div
/div
div
AA3
div style="display: none;margin-left: 100px;"
pAAA3/p
pAAA3/p
pAAA3/p
/div
/div
/div
div style="display: none" class="tab1"
div
BB1
div style="display: none;margin-left: 100px;"
pBBB1/p
pBBB1/p
pBBB1/p
/div
/div
div
BB2
div style="display: none;margin-left: 100px;"
pBBB2/p
pBBB2/p
pBBB2/p
/div
/div
div
BB3
div style="display: none;margin-left: 100px;"
pBBB3/p
pBBB3/p
pBBB3/p
/div
/div
/div
div style="display: none" class="tab1"
div
CC1
div style="display: none;margin-left: 100px;"
pCCC1/p
pCCC1/p
pCCC1/p
/div
/div
div
CC2
div style="display: none;margin-left: 100px;"
pCCC2/p
pCCC2/p
pCCC2/p
/div
/div
div
CC3
div style="display: none;margin-left: 100px;"
pCCC3/p
pCCC3/p
pCCC3/p
/div
/div
/div
/body
script
$(function(){
$(".Tab span").each(function(i){
$(this).click(function(){
$(".tab1:eq("+i+")").show().siblings(".tab1").hide()
})
})
$(".tab1div").click(function(){
$(this).find("div").show()
$(this).siblings("div").find("div").hide()
})
})
/script
/html