你這個邏輯有錯誤呀。 還有就是,你應(yīng)該可以這樣去實(shí)現(xiàn)吧。 給ID為test的控件綁定一個onchange事件,當(dāng)值為1的時候,下一個控件調(diào)用focus()函數(shù)聚焦,這樣可以嗎?
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計制作、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的樂平網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
這里有一個內(nèi)容要特別注意的那就是給標(biāo)簽的mouseover事件設(shè)置延遲,這樣防止用戶惡意的移動鼠標(biāo)導(dǎo)致放送大量的請求而是服務(wù)器崩潰,用到setTimeout函數(shù),主要用到已下的事件
1
$().each(function(){})
這個是個非常重要的遍歷所有標(biāo)簽的好辦法
2
mouseover事件,
還有就是關(guān)鍵的css樣式編寫,控制顯示的樣式,
復(fù)制代碼
代碼如下:
!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"標(biāo)簽1/li
li
標(biāo)簽2/li
li
標(biāo)簽3/li
/ul
div
class="divarea"內(nèi)容1/div
div內(nèi)容2/div
div內(nèi)容3/div
/BODY
/HTML
接下來就是控制樣式的css
復(fù)制代碼
代碼如下:
ul
,li
{
margin:0px;
padding:0px;
list-style:none;
}
li
{
float:left;
background-color:#66CC00;
margin-right:2px;
//這個是設(shè)置標(biāo)簽之間的間距
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
復(fù)制代碼
代碼如下:
//定義全局變量
var
timeout;
$(document).ready(function(){
//找到所有的li標(biāo)簽
$("li").each(function(index){
$(this).mouseover(function(){
//滑動門都要設(shè)置一個延遲時間,避免用戶瘋狂移動鼠標(biāo),導(dǎo)致服務(wù)器崩潰,這個很重要
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 完結(jié)時侯再次呼叫這個 tabs_run()
例如
$('#add').live('click', function() {
.....
tabs_run();
}
不過我疑惑了,你的 tabContent 沒有設(shè)置 rel 或者 id… Tabs 是怎樣偵測 index 的呢?
點(diǎn)擊哪個 li 會 load 哪個 tabContent 呢?
本文實(shí)例講述了jQuery簡單tab切換效果實(shí)現(xiàn)方法。分享給大家供大家參考。具體如下:
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="#"選擇標(biāo)題1/a/li
li
class="taba"a
href="#"選擇標(biāo)題2/a/li
li
class="taba"a
href="#"選擇標(biāo)題3/a/li
li
class="taba"a
href="#"選擇標(biāo)題4/a/li
li
class="taba"a
href="#"選擇標(biāo)題5/a/li
/ul
div
class="tabcontent"
選擇內(nèi)容1
/div
div
class="tabcontent"
style="DISPLAY:
none"
選擇內(nèi)容2
/div
div
class="tabcontent"
style="DISPLAY:
none"
選擇內(nèi)容3
/div
div
class="tabcontent"
style="DISPLAY:
none"
選擇內(nèi)容4
/div
div
class="tabcontent"
style="DISPLAY:
none"
選擇內(nèi)容5
/div
/div
希望本文所述對大家的jQuery程序設(shè)計有所幫助。
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(){
//?如果需要點(diǎn)擊切換,將?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