首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >活动时更改链接图像

活动时更改链接图像
EN

Stack Overflow用户
提问于 2010-01-19 23:26:52
回答 2查看 10.1K关注 0票数 2

我有3个链接,代表了我的页面中一个iFrame的内容。当您单击每个链接时,它将重新加载该iFrame的内容,而不会重新加载页面。

当我的链接处于活动状态时,如何将其图像设置为更改?

下面是我的代码:

代码语言:javascript
运行
复制
        <div id="tabs">
            <div id="overview">
                 <a id="overviewtab" target="tabsa" href="toframe.html">Overviews</a>
            </div>
            <div id="gallery">
                 <a target="tabsa" href="tawagpinoygallery.html">Gallery</a>
            </div>
            <div id="reviews">
                 <a target="tabsa" href="trframe.html">Reviews</a>
            </div>
        </div>
        <div id="tabs-1">
            <!--<div id="scroller">-->
            <iframe name= "tabsa" width="95%" height="100%" frameborder="0"></iframe>
        </div>

CSS代码:

代码语言:javascript
运行
复制
#gallery a { 
text-indent: -9999px; 
padding-top: 40px; 
background: url(../images/GalleryTab.png) no-repeat; 
height: 51px; width: 123px; position: absolute; z-index: 2; 
} 

#gallery a:active, a:hover { 
text-indent: -9999px; 
padding-top: 40px; 
background: url(../images/galleryoverview.png) no-repeat; 
height: 51px; 
width: 123px; 
position: absolute; 
z-index: 2; 
}

它似乎不起作用..:o当我在链接上按住鼠标时,我只能看到图像的变化,但当我单击它时,图像仍然保持不变,就好像它不是活动的选项卡一样。:不,谢谢!

EN

Stack Overflow用户

发布于 2010-01-19 23:30:44

我没有看到访问过的样式吗?仅活动和悬停状态。

添加

代码语言:javascript
运行
复制
 #gallery a:visited{}

样式,看看这是否有帮助。

但我想知道这是不是你真正想要问的?如果这是用户单击的最后一个链接,您可能希望显示与其他链接不同的链接。要做到这一点,你可能需要使用一些javascript。

例如,如果你使用jQuery,你可以这样做:

代码语言:javascript
运行
复制
$("#gallery a").click(function(){
    $("#gallery a").removeClass("ActiveClass");
    $(this).addClass("ActiveClass");
});

其中ActiveClass是用于适当设置链接样式的CSS类。

根据下面的评论进行编辑。

让我们假设您有三个看起来相同的链接(称之为lookA)。单击其中一个,它看起来与其他两个(lookB)不同,但其他两个看起来仍然相同(lookA)。然后单击第二个链接。第二个链接不是lookB,另外两个链接是lookA。这听起来像你想要的吗?至少我是这样解释你的问题的。

因此,在CSS中创建两个类:

代码语言:javascript
运行
复制
 .lookA {/*Style for lookA*/}
 .lookB {/*Style for lookB*/}

当然,您可以使用更有意义的名称。

然后,您可以向此场景中需要使用的每个链接添加一个类,如下所示:

代码语言:javascript
运行
复制
 <div id="tabs">
        <div id="overview">
             <a class="imagelink lookA" id="overviewtab" target="tabsa" href="toframe.html">Overviews</a>
        </div>
        <div id="gallery">
             <a class="imagelink lookA" target="tabsa" href="tawagpinoygallery.html">Gallery</a>
        </div>
        <div id="reviews">
             <a class="imagelink lookA" target="tabsa" href="trframe.html">Reviews</a>
        </div>
    </div>

这样每个链接都可以被它的类引用,也就是imagelink。此外,每个链接都有一个默认的lookA。

现在在jQuery中(我知道您没有指定jQuery,但使用它比普通Javascript简单100倍):

代码语言:javascript
运行
复制
 $(document).ready(function(){
    $(".imagelink").click(function(){
       $(".imagelink").removeClass("lookB");
       $(this).addClass("lookB");
       return true;
     });

 });

因此,在单击链接时,它会从任何其他链接中删除lookB,并仅将其应用于所单击的链接。

希望这能对你有所帮助。

票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2094555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档