嘿所有,我正在尽力弄清楚如何去做这件事:
我有两个标签。页面加载时自动选择tab1。这显示选项卡为1.0透明度,而tab2保持为0.7。
用户点击tab2后,tab1变为0.7透明度,tab2变为1.0。但是,我似乎无法做到这一点!
这是我的代码:
<script type="text/javascript">
function checkTab(theTab)
{
$('#tab1').fadeTo(250, 0.70);
$('#tab2').fadeTo(250, 0.70);
if ($("#tabActive").val() == theTab)
{
$(theTab).fadeTo(250, 1);
}
}
$(document).ready(function() {
$('#tab1').hover(function() {$(this).fadeTo(250, 1)}, function() {checkTab('#tab1')});
$('#tab2').hover(function() {$(this).fadeTo(250, 1)}, function() {checkTab('#tab2')});
$('#tab2').fadeTo(250, 0.70);
$('#tabActive').val('tab1');
});
</script>
<li class="stats"><img src="images/Stats.png" name="nav1" width="70" height="52" id="tab1" onclick="$('#tabActive').val('tab1');" /></li>
<li class="cal"><img src="images/cal.png" name="nav1" width="70" height="52" id="tab2" onclick="$('#tabActive').val('tab2');" /></li>
<input name="tabActive" id="tabActive" type="text" />
任何帮助都会很棒! :)
大卫
答案 0 :(得分:0)
您正在将值tab1
输入tabActive.val()
,但检查#tab1
。决定你是否想要或者不想选择器中的#=
$(document).ready(function() {
$('#tab1').hover(function() {$(this).fadeTo(250, 1)}, function() {checkTab('#tab1')});
$('#tab2').hover(function() {$(this).fadeTo(250, 1)}, function() {checkTab('#tab2')});
$('#tab2').fadeTo(250, 0.70);
$('#tabActive').val('#tab1');
});
(实际上,更简洁的方法是输入一个数字(1或2),然后在check函数中构建字符串。但这只是我认为字符串在javascript中看起来很难看并且尝试避免他们......)