javascript - css3 过渡开始点击

标签 javascript jquery css

我希望在点击后开始 CSS3 过渡。

现在,如果元素被添加一个带有 jQ​​uery 的类(参见 span.toggle-nav.two),它就可以正常工作了,jQuery 知道接下来要做什么。

我尝试过使用 :focus(请参阅 span.toggle-nav.one),但这不起作用。如果没有 jQuery,我如何让它工作?

请看这里:http://jsfiddle.net/aE4C7/单击 Two 有效,但单击 One 无效。

<span class="toggle-nav one">One</span>
<span class="toggle-nav two">Two</span>

<script type="text/javascript">
     $('.toggle-nav.two').on('click',function(){
        $(this).addClass("click");
    });
</script>

<style type="text/css">
.toggle-nav {
    background-image:url(https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcS8hRiDDs6RJRzelpuFRX2wG5Wx2cQPOBWKYCOmlA2Wr34dx1vv);
    background-repeat:no-repeat;
    width:50px;height:50px;
    display:inline-block;
}
.toggle-nav.one:focus {
    -webkit-animation: spin 0.6s infinite linear;
    -moz-animation: spin 0.6s infinite linear;
    -o-animation: spin 0.6s infinite linear;
    -ms-animation: spin 0.6s infinite linear;
}
.toggle-nav.two.click {
    -webkit-animation: spin 0.6s infinite linear;
    -moz-animation: spin 0.6s infinite linear;
    -o-animation: spin 0.6s infinite linear;
    -ms-animation: spin 0.6s infinite linear;    
}


@-webkit-keyframes spin {
    0% { -webkit-transform: rotate(0deg);}
    100% { -webkit-transform: rotate(180deg);}
}
@-moz-keyframes spin {
    0% { -moz-transform: rotate(0deg);}
    100% { -moz-transform: rotate(180deg);}
}
@-o-keyframes spin {
    0% { -o-transform: rotate(0deg);}
    100% { -o-transform: rotate(180deg);}
}
@-ms-keyframes spin {
    0% { -ms-transform: rotate(0deg);}
    100% { -ms-transform: rotate(180deg);}
}
</style>

有没有办法在没有 jQuery 的情况下完成这项工作?

最佳答案

要让span获得焦点,需要设置tabindex属性:

<span class="toggle-nav one" tabindex="-1">One</span>

然后你可能希望样式也设置 CSS outline 属性:

大纲:无;

DEMO

关于javascript - css3 过渡开始点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23429218/

相关文章:

html - 在导航栏内垂直对齐所有内容

javascript - onclick 事件在 google chrome 上不起作用

javascript - 访问内部 DIV id

javascript - 当用户选择它并在悬停时更改背景颜色时,JQuery 突出显示带有图像的菜单项

Jquery验证引擎+ajax表单

javascript - Ajax 调用成功后将函数重新绑定(bind)到 anchor 标记

jquery - css高度问题

javascript - 尝试将字符串从 js 写入 mySql 数据库时得到 %%

javascript - 如何使用jquery将元素的标题添加到类属性

css - 通过渲染插件添加水印