编辑:我找到了一个更好的例子,提供了一些代码。转到它讨论如何向左滑动元素的部分。如果您有任何问题,请告诉我们。
我还冒昧地为您提供了一个完整的工作示例(与文章中的示例完全相同),因此您可以在浏览器中运行它
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<style>
.slide {
position: relative;
background-color: gray;
height: 100px;
width: 500px;
overflow: hidden;
}
.slide .inner {
position: absolute;
left: -500px;
bottom: 0;
background-color:#e3e3e3;
height: 30px;
width: 500px;
}
</style>
<script>
$(document).ready(function() {
$('#slideleft button').click(function() {
var $lefty = $(this).next();
$lefty.animate({
left: parseInt($lefty.css('left'),10) == 0 ?
-$lefty.outerWidth() :
0
});
});
});
</script>
</head>
<body style>
<div id="slideleft" class="slide">
<button>slide it</button>
<div class="inner">Slide to the left</div>
</div>
</body>
</html>
这篇文章解释了大部分内容,但我会给你一个快速的总结。从本质上讲,我们所做的是我们正在制作它,以便无论您试图滑动什么,我们都在改变左侧位置以便它出来。最初,我将 CSS 设置为 -500px,因此它位于屏幕之外。然后,javascript 监听按钮单击并通过更改左侧位置来移动 div。Jquery 的animate()函数完成了大部分工作。
令人困惑的是三元运算符。您可以在此处找到更多信息。本质上,它只是检查 left 属性是否为 0。如果是,我们希望将其移回外部 -500px。如果左边不是 0px,我们知道它一定在屏幕之外,所以我们把它移回 0px。
如果您还有其他任何困惑,请告诉我们。