1

假设我有一个元素,我想在悬停状态下更改它。

使用一个Pseudo类,它看起来像这样:

#element:before { background-position: 0px -50px; }
#element:hover:before { background-position: -50px -50px; }

我可以animation为它实现一个 jQuery 函数吗?或者我可以确定它的过渡时间吗?

4

2 回答 2

1

这在 jQuery 中是不可能的。

:after 或 :before 创建的内容不是 DOM 的一部分,因此无法选择或修改。
- 来源

您可以在 CSS 中使用它来实现过渡效果,但这在旧浏览器中不起作用:

#element:before {
    -webkit-transition: background-position 1s linear;
    -moz-transition: background-position 1s linear;
    -o-transition: background-position 1s linear;
    -ms-transition: background-position 1s linear;
    transition: background-position 1s linear;
}
于 2013-04-18T16:55:52.267 回答
1

你能用.prev()吗?

$(".block").prev().animate();

示例:http: //jsfiddle.net/charlescarver/EkW4z/

于 2013-04-18T18:55:24.597 回答