gpt4 book ai didi

javascript - 在按下选项卡时它不会移动到下一个选项卡

转载 作者:太空宇宙 更新时间:2023-11-04 14:00:56 27 4
gpt4 key购买 nike

我正在使用 html css 和 jquery 创建选项卡。我没有使用 jquery ui。 让我解释一下这个问题。

在选项卡中有很多选项卡。每个选项卡都包含文本框、下拉列表、复选框等。例如,当用户在第一个选项卡中时。在此选项卡中有文本框。当用户在按下 tab 键时到达最后一个文本框时,它将移动到下一个选项卡的第一个元素(如文本框/下拉列表等)。我创建了这个但它没有移动到选项卡文本框。该代码可在 pastebin 和 js fiddle 上找到。我找不到我的代码有什么问题。如果您需要任何说明,请问我

注意:请不要推荐tabindex。我想使用 jquery。

链接:demo on jsfiddle粘贴箱:- http://pastebin.com/E85NsNtg

<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'/>
<title>jQuery Tabs Demo</title>
<style>
* {padding:0; margin:0;}

html {
background:url(/img/tiles/wood.png) 0 0 repeat;
padding:15px 15px 0;
font-family:sans-serif;
font-size:14px;
}

p, h3 {
margin-bottom:15px;
}

div {
padding:10px;
width:600px;
background:#fff;
}

.tabs li {
list-style:none;
display:inline;
}

.tabs a {
padding:5px 10px;
display:inline-block;
background:#666;
color:#fff;
text-decoration:none;
}

.tabs a.active {
background:#fff;
color:#000;
}

</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script src="global.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
</head>
<body>
<div id="tabs">
<ul class='tabs'>
<li><a id="ATab1" href='#tab1' >Tab 1</a></li>
<li><a id="ATab2" href='#tab2' >Tab 2</a></li>
<li><a id="ATab3" href='#tab3' >Tab 3</a></li>
<li><a id="ATab4" href='#tab4' >Tab 4</a></li>
<li><a id="ATab5" href='#tab5' >Tab 5</a></li>
<li><a id="ATab6" href='#tab6' >Tab 6</a></li>

</ul>
<div id='tab1'>
<h3>Section 1</h3>
Fisrt: <input type="textbox" />
<br />
Second: <input type="textbox" />
<br />
Third: <input type="textbox" />
<br />
Fourth: <input type="textbox" />
</div>
<div id='tab2'>
<h3>Section 2</h3>
Fifth: <input type="textbox" />
<br />
Sixth: <input type="textbox" />
</div>
<div id='tab3'>
<h3>Section 3</h3>
Seventh: <input type="textbox" />
<br />
Eighth: <input type="textbox" />
</div>
<div id='tab4'>
<h3>Section 4</h3>
ninth: <input type="textbox" />
<br />
tength: <input type="textbox" />
</div>
<div id='tab5'>
<h3>section 5</h3>
11: <input type="textbox" />
<br />
12: <input type="textbox" />
</div>

<div id='tab6'>
<h3>section 6</h3>
13: <input type="textbox" />
<br />
14: <input type="textbox" />
</div>



</body>
</html>

jquery

$(document).ready(function () {
$('ul.tabs').each(function () {
// For each set of tabs, we want to keep track of
// which tab is active and it's associated content
var $active, $content, $links = $(this).find('a');

if ($('#_ctl0_hdnCurrentTabSelection').val() == "") {
$('#_ctl0_hdnCurrentTabSelection').val(location.hash)
}

// If the location.hash matches one of the links, use that as the active tab.
// If no match is found, use the first link as the initial active tab.
$active = $($links.filter('[href="' + $('#_ctl0_hdnCurrentTabSelection').val() + '"]')[0] || $links[0]);
$active.addClass('active');
$content = $($active.attr('href'));
window.location.href = window.location.href.toString().split('#')[0] + $active.attr('href');

// Hide the remaining content
$links.not($active).each(function () {
$($(this).attr('href')).hide();
});

// Bind the click event handler
$(this).on('click', 'a', function (e) {
// Make the old tab inactive.
$active.removeClass('active');
//window.location.href = window.location.href.toString().replace($active.attr('href'), '');
$content.hide();

// Update the variables with the new link and content
$active = $(this);
$('#_ctl0_hdnCurrentTabSelection').val($active.attr("href"))
$content = $($(this).attr('href'));
window.location.href = window.location.href.toString().split('#')[0] + $active.attr('href');

// Make the tab active.
$active.addClass('active');
$content.show();

// Prevent the anchor's default click action
e.preventDefault();
});
});

$(document).on('keydown',function(e) {
var keyCode = e.keyCode || e.which;

if (keyCode === 9) {
if(!$('#tab1:last-child').is(':focus') && window.location.href.search('tab1') != -1){
$('#ATab1').removeClass('active');
$('#ATab2').addClass('active');

$('#tab1').hide();
$('#tab2').show();
$('#tab3').hide();
$('#tab4').hide();
$('#tab5').hide();


window.location = "#tab2";
}
else if(!$('#tab2:last-child').is(':focus') && window.location.href.search('tab2') != -1){
$('#ATab2').removeClass('active');
$('#ATab3').addClass('active');

$('#tab1').hide();
$('#tab2').hide();
$('#tab3').show();

window.location = "#tab3";
}
else if(!$('#tab3:last-child').is(':focus') && window.location.href.search('tab3') != -1){
$('#ATab3').removeClass('active');
$('#ATab4').addClass('active');

$('#tab1').hide();
$('#tab2').hide();
$('#tab3').hide();
$('#tab4').show();
window.location = "#tab4";
}

else if(!$('#tab4:last-child').is(':focus') && window.location.href.search('tab4') != -1){
$('#ATab4').removeClass('active');
$('#ATab5').addClass('active');

$('#tab1').hide();
$('#tab2').hide();
$('#tab3').hide();
$('#tab4').hide();
$('#tab5').show();
window.location = "#tab5";
}

else if(!$('#tab5:last-child').is(':focus') && window.location.href.search('tab5') != -1){
$('#ATab5').removeClass('active');
$('#ATab6').addClass('active');

$('#tab1').hide();
$('#tab2').hide();
$('#tab3').hide();
$('#tab4').hide();
$('#tab5').hide();
$('#tab6').show();
window.location = "#tab6";
}

else if(!$('#tab6:last-child').is(':focus') && window.location.href.search('tab6') != -1){
$('#ATab6').removeClass('active');
$('#ATab1').addClass('active');

$('#tab1').show();
$('#tab2').hide();
$('#tab3').hide();
$('#tab4').hide();
$('#tab5').hide();
$('#tab6').hide();
$('#tab7').hide();
window.location = "#tab1";
}



}
e.preventDefault();

});
});

最佳答案

请在您的网站上添加jquery最新版本

这是代码(请放在<head>标签上):-

<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>

关于javascript - 在按下选项卡时它不会移动到下一个选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21521265/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com