检查此链接Click Me,因为您可以看到我有12个菜单项,但由于空间限制,无法显示超过4个菜单。如您所见,目前只有Menu1到Menu4可见,其他Meus被隐藏。
更新:由于Jsfiddle做了一些清理,他们删除了我的小提琴,在上面我发布了回答小提琴。在我的问题中,一个jquery部分不存在。
我有两个按钮:
- 向左移动-1(稍后将被称为“ML”)
- 向右移动+1(稍后将被称为“MR”)
醇>
我正在努力实现这一目标:
MR
会使菜单沿+1
ML
会使菜单沿-1
HTML
<div id="outer">
<input type="button" value="move left by -1" class="left" />
<input type="button" value="Move Right by +1" class="left" />
<ul id="menulist">
<li>Menu 1</li>
<li>Menu 2</li>
<li>Menu 3</li>
<li>Menu 4</li>
<li>Menu 5</li>
<li>Menu 6</li>
<li>Menu 7</li>
<li>Menu 8</li>
<li>Menu 9</li>
<li>Menu 10</li>
<li>Menu 11</li>
<li>Menu 12</li>
</ul>
CSS
#outer {
width:448px;
overflow:hidden;
}
.left {
float:left;
}
ul, li {
list-style:none;
margin:0;
padding:0;
overflow:hidden;
}
ul {
font-size:0;
float:left;
width:1400px;
}
li {
display:inline-block;
padding:5px;
background:lightgrey;
border:darkgrey;
width:100px;
overflow:hidden;
text-align:center;
font-size:14px;
border:1px solid black;
}
对此有任何帮助将受到高度赞赏。
答案 0 :(得分:0)
double
li {
border:darkgrey;
border:1px solid black;
}
HTML
<input type="button" value="move left by -1" class="left" />
<input type="button" value="Move Right by +1" class="right" />
jquery的
$('.left').click(function() {
if($('#menulist').css('margin-left')=='-896px'){
$('#menulist').css('margin-left','-896px!important');
}
else{
$('#menulist').animate({
'marginLeft' : "-=112px" //moves left
});
}
});
$('.right').click(function() {
if($('#menulist').css('margin-left')=='0px'){
$('#menulist').css('margin-left','0px!important');
}
else{
$('#menulist').animate({
'marginLeft' : "+=112px" //moves right
});
}
});
答案 1 :(得分:0)
正如上面的评论所述,如果这在IE中不起作用,请参阅this stack overflow question是否会对您有所帮助
HTML
<div id="outer">
<input type="button" value="move left by -1" class="left" />
<input type="button" value="Move Right by +1" class="right" />
<ul id="menulist">
<li>Menu 1</li>
<li>Menu 2</li>
<li>Menu 3</li>
<li>Menu 4</li>
<li>Menu 5</li>
<li>Menu 6</li>
<li>Menu 7</li>
<li>Menu 8</li>
<li>Menu 9</li>
<li>Menu 10</li>
<li>Menu 11</li>
<li>Menu 12</li>
</ul>
CSS
#outer {
width:448px;
overflow:hidden;
}
.left {
float:left;
}
ul, li {
list-style:none;
margin:0;
padding:0;
overflow:hidden;
}
ul {
font-size:0;
float:left;
width:1400px;
}
li {
display:inline-block;
padding:5px;
background:lightgrey;
border:darkgrey;
width:100px;
overflow:hidden;
text-align:center;
font-size:14px;
border:1px solid black;
}
JS
$('.left').click(function () {
if (parseInt($('#menulist').css('margin-left'), 10) >= -784) {
$('#menulist').animate({
'marginLeft': "-=112px" //moves left
});
}
});
$('.right').click(function () {
if (parseInt($('#menulist').css('margin-left'), 10) >= 0) {
$('#menulist').css('margin-left', '0px!important');
} else {
$('#menulist').animate({
'marginLeft': "+=112px" //moves right
});
}
});