javascript - 在背景图像上滑动效果

标签 javascript jquery css

您好,我想在网站 http://www.moveline.com/ 之类的背景图像之间重现一种 slider 效果。在主页上执行。

标题下方的示例部分:“制定下一步行动的详细信息”。

我看他们用jQuery、RequireJS(2.1.4)的代码

我试图隔离产生这种效果的代码,但 JavaScript 代码已被压缩,这使得它真的很难理解(而且他们使用主干)。

知道如何借助一些插件在 jQuery 中很好地重现这个吗?

谢谢

最佳答案

这是他们在网站上几乎所做的工作的 fiddle http://jsfiddle.net/y29kR/2/

HTML:

<div class="items">
    <div class="menu-item" data-look-at="0 0">item1</div>
    <div class="menu-item" data-look-at="-40px -70px">item2</div>
    <div class="menu-item" data-look-at="-120px -30px">item3</div>
</div>
<div class="menu-content"></div>

在背景位置上带有 css 转换的 CSS

.items {
    float:left;
}
.menu-item {
    padding: 15px;
    color: #333;
    border-bottom: 1px solid #ccc;
    width: 70px;
}

.menu-content {
    height: 150px;
    width: 150px;
    background-repeat: no-repeat;
    background-image: url("http://placehold.it/350x350");
    background-position: center center;
    float:left;
    -webkit-transition: background-position 600ms ease;
    -moz-transition: background-position 600ms ease;
    -o-transition: background-position 600ms ease;
}

我正在使用 jQuery 的 .css 方法来检测悬停事件以产生(几乎)预期的效果:

jQuery(document).ready(function() {
    $('.menu-item').hover(function(e) {
        var target = $(e.target),
            newPos = target.data("look-at");
        $('.menu-content').css({'background-position': newPos}); 
    });
    $('.items').mouseleave(function(e) {  
        $('.menu-content').css({'background-position': 'center center'}); 
    });
});

关于javascript - 在背景图像上滑动效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17623298/

相关文章:

javascript - jQuery 无法获取输入值

javascript - 我的 "this.router.navigate"在我的 Angular 2 应用程序中没有触发

jquery - 滚动到 DIV 的垂直中间

javascript - 点击关闭按钮后,点击 Youtube 视频不关闭

html - 将 div 中的 span 元素水平居中对齐

android - @font-face 不适用于移动设备(特别是 Android)

javascript - 单击图标两次不关闭下拉菜单

JavaScript 对象范围

jquery - 如何使用 jquery.linkify 插件链接 @usernames 和 #hashtags

css - 如何在 Div 中排列此文本和按钮?