单击 href link 时如何使用 css 控件将焦点放在 div 背景上

How to use css control to focus on div background when href link clicked

我正在尝试将 :focus 放在 div 上,以便在单击 href link 时它会聚焦于其他颜色,这可能吗?任何帮助,将不胜感激。

以下是我目前的进度

eg: Fiddle Demo


预期结果,当单击 href link 时,它将聚焦在 div 背景上(就像悬停一样)。

我不知道如何将其转换为 javascript

 $("#colOne ul li").click(function(){
 $("#colOne ul li").removeClass("active");
 $(this).addClass("active")
 })

听起来您想在 li 上使用事件侦听器,而不是 :focus 伪 class。如果您设置了一对 classes 来反映您想要的颜色,您只需单击即可在它们之间切换。我建议 jQuery's toggleClass 完成这项工作。

您需要执行 li 操作,因此您需要使用 Jquery 或 Javascript。
使用以下 JavaScript 将解决您的问题。

HTML:

<div id="colOne">
    <h3>Fruit</h3>
    <div class="bg1">
        <ul>
            <li class="litest"><a href="" target="entryFrame">Apple</a></li>
            <li class="litest"><a href="" target="entryFrame">Orange</a></li>
            <li class="litest"><a href=""  target="entryFrame">Banana</a></li>
        </ul>
        </div>
</div>

Javascript:

<script language="javascript">
var buttons = document.getElementsByClassName("litest");

for(var i = 0; i < buttons.length; ++i){

    buttons[i].onmousedown = function() {
        this.setAttribute("class", "active");
    }
}
</script>

您可以使用 this.classList.toggle('active'); 而不是 this.setAttribute("class", "active"); 来添加和删除效果。

检查Fiddle

如果您想使用 JQuery,请使用以下 JQuery 代码:

$(function(){
    $("li").bind("click", function(){
         $(this).addClass('active');
    });
});

编辑:

这里我根据您的要求编辑了我的fiddle。

勾选Fiddle.