jquery图像随标签淡出

时间:2010-03-27 08:00:07

标签: jquery

嘿所有,我正在尽力弄清楚如何去做这件事:

我有两个标签。页面加载时自动选择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" />

任何帮助都会很棒! :)

大卫

1 个答案:

答案 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中看起来很难看并且尝试避免他们......)