jquery - 替换鼠标悬停时的图像,同时将其向左移动

标签 jquery css

我的页面中有一张图片。我想做的是,当任何人悬停在该图像上时,我想慢慢地将图像稍微移动到左侧,同时用另一张图像替换该图像。当鼠标移开时,我想将上一个图像恢复到之前的位置。

我尝试使用以下代码,其中使用 :hover 但它的替换速度非常快,并且没有将图像移动到足够的左侧。

请检查demo

您能告诉我如何使用 Jquery 或 CSS 来实现此目的吗?

<div class="fb-button"><a target="_blank" href="#"></a></div> 

CSS

.fb-button a{
background-image:url(http://i33.tinypic.com/20svqkh.png); 
}

.fb-button a:hover{

background-image:url(http://i36.tinypic.com/n2b978.png); // replacement
}

.fb-button a, .twt-button a, .in-button a, .youtube-button a {
width: 34px;
height: 33px;
}


.fb-button a, .twt-button a, .in-button a, .youtube-button a {
display: block;
}

最佳答案

您不需要为此使用 Javascript。

只需使用负边距和过渡。

.fb-button a{
    background-image:url(http://i33.tinypic.com/20svqkh.png);
    /*transition*/
    -webkit-transition:margin 1s, background-image 1s;
       -moz-transition:margin 1s, background-image 1s;
         -o-transition:margin 1s, background-image 1s;
            transition:margin 1s, background-image 1s;
}
.fb-button a:hover{
    background-image:url(http://i36.tinypic.com/n2b978.png);
    margin-left:-0.5em;
}

http://jsfiddle.net/chPrK/6/

关于jquery - 替换鼠标悬停时的图像,同时将其向左移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16178424/

相关文章:

javascript - Rails 4 Bootstrap 模式在显示前短暂闪烁

javascript - Leaflet 在不绑定(bind)到标记的情况下打开多个弹出窗口

javascript - 如何使用 JSON 数据动态填充 jQuery Mobile 页面?

javascript - 如何使元素假位置 :fixed so it acts fixed until a certain scroll height, 然后附加?

html - 每个设备中的不同 SVG 布局

java - 如何测试是否使用 javascript 加载了 java applet?

javascript - 使用 JSON 重定向到 WebForm

jquery - 响应式 Bootstrap 3 图像交换翻转

css - 合理的内联 Div 方法破坏了换行文本

javascript - 使用 API 构建二维码生成器