当选项卡处于活动状态时,如何在jQuery选项卡上更改图像?

时间:2012-07-11 22:34:28

标签: jquery image jquery-ui tabs

我正在使用jQuery标签,我使用的是每个标签而不是文字的图像。我想在标签处于活动状态时更改图像。标签本身的代码是:

<ul>
<li><a href="#tabs-1"><img src="images/dashboard_off.gif"/></a></li>
<li><a href="#tabs-2"><img src="images/advertising_off.gif"/></a></a></li>
<li><a href="#tabs-3"><img src="images/marketing_off.gif"/></a></li>
<li><a href="#tabs-4"><img src="images/office_off.gif"/></a></li>
<li><a href="#tabs-5"><img src="images/networking_off.gif"/></a></li>
<li><a href="#tabs-6"><img src="images/education_off.gif"/></a></li>
</ul>

我想将它们切换到图像的“on”版本(“images / dashboard_on.gif”等等)。

我的脚本是:

<script type="text/javascript">
$(function(){
    $( "#tabs" ).tabs({
    event: "mouseover"
    });
    });
</script>

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:-1)

您可以考虑使用背景图片,而不是使用内嵌图像;这样,您就可以在.ui-state-active上将其切换出来。


如果您绝对需要使用内联图片,可以试试这个:

$(function(){
    $( "#tabs" ).tabs({
        event: "mouseover"
    })
    .find('> ul > li').hover(function() {
        $(this).find('img').prop('src', function(i, v) {
            return v.replace('off.gif', 'on.gif');
        });
    },
    function() {
        $(this).find('img').prop('src', function(i, v) {
            return v.replace('on.gif', 'off.gif');
        });
    });
});