我有一个容器div用ul它设置的这样的jsfiddle内:http://jsfiddle.net/BQPVL/1/
滚动为什么不工作?
HTML:
<div id="outside">
<ul id="inside">
<li>hi</li>
<li>how are you?</li>
<li>i am good.</li>
</ul>
</div>
<button id="left">←</button>
<button id="right">→</button>
Run Code Online (Sandbox Code Playgroud)
CSS:
#outside {
width: 200px;
height: 50px;
overflow: scroll;
}
#inside {
width: 1000px;
}
#inside li {
background: red;
width: 99px;
height: 40px;
border-right: 1px solid black;
float: left;
padding: 5px;
}
Run Code Online (Sandbox Code Playgroud)
jQuery的:
var position = $("#inside").scrollLeft();
$(document).ready(function() {
$("#right").bind("click", function() {
$("#inside").animate({
scrollLeft: position + 100
}, 1000);
});
});
Run Code Online (Sandbox Code Playgroud)
Rok*_*jan 10
你需要scrollLeft具有overflow属性的元素,这就是你的#outside
$(function() { // DOM READY shorthand
$("#right, #left").click(function() {
var dir = this.id=="right" ? '+=' : '-=' ;
$("#outside").stop().animate({scrollLeft: dir+'100'}, 1000);
});
});
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,您可以将两个按钮附加到单击处理程序,并在其中检索单击的按钮id.
如果this.id返回"right"var将dir成为"+=",否则逻辑上你点击了#left一个dir并将保持"-="
| 归档时间: |
|
| 查看次数: |
9864 次 |
| 最近记录: |