javascript - 在图像上实现平移窗口?

标签 javascript jquery html css jquery-animate

我正在尝试实现一种效果,其中有一个移动/动画窗口在背景图像上平移,这样您一次只能看到图像的特定部分。

实际上,窗口本身不应该移动,因为它将是一个位于页面某处的 div - 但效果应该是背景在它后面移动。然而,背景不应占用 DOM 上的任何空间(即它不应影响其周围的任何元素)。

实现它的最佳方法是什么?我应该只为窗口 div 创建一个背景图像,然后调整背景位置吗?这可以使用 jQuery 制作动画吗?

____________________
|                   |
|   IMAGE           |
|   ___________     |
|   |  window |     |
|   |_________|     |
|___________________|

最佳答案

更新:jsFiddle用于基于 CSS 的动画。

看看这个 jsFiddle确保它是您想要的。

HTML

<div class="window">
</div>

JS

var position = 135;
$('.window').click(function() {
    position += 20;
    $(this).css('background-position-x', position);
});

CSS

.window {
    background-image: url(image);
    display: block;
    height: 200px;
    width: 200px;
    background-position: 135px -40px;
}

关于javascript - 在图像上实现平移窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17427876/

相关文章:

javascript - 为什么 $scope.someArray.push 不是传递给 $q.promise 上的 .then 的有效函数

jquery - 如何在两个元素之间追加一个元素

javascript - 如何使用 jQuery 判断网站访问者之前是否访问过该网站?

javascript - 有没有IE a :hover fix?

javascript - 无需 JavaScript 即可加载当前页面的书签?

javascript - Google Drive API v3 查找文件夹和子文件夹中的所有文件

jquery - 您应该如何在 Chrome 浏览器上利用即将弃用的方法来处理 jQuery?

javascript - 使用任一 JavaScript 来定位同级元素

html - Ruby on Rails 模型,日历栏作为列,不同模型的主键作为行?

javascript - 在 "close"单击时禁用 Bootstrap 中的折叠动画