我试图让jQuery插件SmoothDivScroll(http://www.smoothdivscroll.com/)从其包含的内容的中心开始,以便在加载时左右滚动条。我知道有一个startAtElementId选项,但这不允许我从中心开始。让SmoothDivScroll在可滚动区域的中心开始
我试过计算中心点并将其应用于适当的元素,但左侧滚动总是停止,然后才会出现,并且正确的元素会在下面浮动。
使用这种尝试JS没有运气:
$("div#scroller").smoothDivScroll();
var halfWayDoc = $(document).width()/2;
var halfWayScrollArea = $("#scroller .scrollableArea").width() /2;
var halfWay = halfWayDoc - halfWayScrollArea;
var scrollArea = $("#scroller .scrollableArea").width();
var scrollAreaAdjust = scrollArea + halfWay;
$("#scroller .item:first-child").css("margin-left",halfWay);
$("#scroller .item:last-child").css("margin-right",halfWay);
$("#scroller .scrollableArea").width(scrollAreaAdjust);
HTML看起来像这样:
<div id="scroller">
<div class="scrollingHotSpotLeft"></div>
<div class="scrollingHotSpotRight"></div>
<div class="scrollWrapper">
<div class="scrollableArea">
<div class="item">
<img src="assets/images/detail/Erdem-A-W-11-B2-sml.jpg" alt="example"/>
</div>
...
<div class="item">
<img src="assets/images/detail/Erdem-A-W-11-B2-sml.jpg" alt="example"/>
</div>
</div>
</div>
</div>
任何帮助或指针赞赏。
干杯, 肖恩
请你用JsFiddle来模拟问题?这对我们来说更容易帮助你:-) – Qorbani 2012-01-09 21:18:43
@Qorbani我在这里添加了一个小提琴:http://jsfiddle.net/shaunmorrison/4JeSv/26/ - 请注意第一项具有负边距(关闭页面)但第二项不会超出窗口边界。 由于'scrollableArea'宽度尽管有边距,所以还有下面的项目被错误地分流。 – 2012-01-11 20:06:57