【问题标题】:keeping a: active until another link is clicked保持 a:在单击另一个链接之前保持活动状态
【发布时间】:2014-10-24 03:37:17
【问题描述】:

我有一个链接列表 - 不是菜单栏 - 就像在

<div align="right"><a href="me1.cfm?pic_ws=80&typ=1" target="mnfrm3">ME1</A></div><br>
<div align="right"><a href="me2.cfm?pic_ws=80&typ=1" target="mnfrm3">ME2</A></div><br>
<div align="right"><a href="me3.cfm?pic_ws=80&typ=1" target="mnfrm3">ME3</A></div><br>

并使用标准 css

a {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  color: #C65B05;
}

a:hover   {
  text-decoration: none;
  color: #03B003;
}

我想要做的是选择链接以保持悬停颜色,直到在同一窗口中单击不同的链接。 (页面包含 iframe,但这是首页,所以如果在 iframe 中单击链接,我不希望状态改变)

【问题讨论】:

  • 您是否允许/熟悉 JQuery?

标签: css hyperlink


【解决方案1】:

HTML:(添加了onclick="clickSingleA(this)"class="single" 属性。

要默认激活其中一个链接,只需添加 active

<div align="right"><a onclick="clickSingleA(this)" class="single active" href="me1.cfm?pic_ws=80&typ=1" target="mnfrm3">ME1</A></div><br>
<div align="right"><a onclick="clickSingleA(this)" class="single" href="me2.cfm?pic_ws=80&typ=1" target="mnfrm3">ME2</A></div><br>
<div align="right"><a onclick="clickSingleA(this)" class="single" href="me3.cfm?pic_ws=80&typ=1" target="mnfrm3">ME3</A></div><br>

CSS:(添加了 a.active

a {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    color: #C65B05;
}

a:hover, a.active   
{
    text-decoration: none;
    color: #03B003;
}

JavaScript:(激活链接的功能,并删除旧的活动

function clickSingleA(a)
{
    items = document.querySelectorAll('.single.active');

    if(items.length) 
    {
        items[0].className = 'single';
    }

    a.className = 'single active';
}

【讨论】:

  • 这适用于所有浏览器。决定用不同的颜色分割悬停和活动,这也有效....因为当登陆页面时,第一个链接的动作是 iframe 中的默认显示,有没有办法让该链接默认处于活动状态? tnx
  • @Andy 我已经更新了答案,我也在这里发表了评论,但我现在看到没有发布。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-12-31
  • 1970-01-01
  • 2012-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多