javascript - 横向溢出滑动面板

标签 javascript jquery css twitter-bootstrap

我正在为网络动画制作动画 GUI,并希望时间线区域像这样左右滑动:http://visjs.org/examples/timeline/basicUsage.html

我的开始时间为 0,因此我们不需要滑动到负时间,但我希望能够放大然后左右滑动以查看整个时间轴。

我查看了 overflow-x: scroll,但它似乎没有按预期工作。

问题来了。在此处查看此页面:http://imaginarytools.com/ .您可以看到时间线向右离开屏幕,现在请注意背景灰色刚好向右离开屏幕,因此如果您向右滚动,则标尺后面没有灰色背景。

我有这样的时间表:

<div class="col-md-10 m-0 p-0 timeline-right-panel">
  <div class="col-md-12 scrubberHandle m-0 p-0">
    <i class="fa fa-chevron-down scrubber-icon"></i>
  </div>
  <div class="col-md-12  m-0 p-0 timeline-container timeline-container-header">
    <div id="timeSlider" class="col-md-12 m-0 p-0"></div>
    <div class="col-md-12  m-0 p-0 timelineTicks timelineNumbers timelinePositioning"></div>
  </div>
  <div class="col-md-12  m-0 p-0 timelineTimingPanel"></div>
</div>

当您呈现页面时,由于运行 javascript 来构建时间线,所以当您检查它时,timeline-header div 看起来像这样:

<div class="col-md-12  m-0 p-0 timeline-container timeline-container-header" style="width: 2110px;">
  <div id="timeSlider" class="col-md-12 m-0 p-0"></div>
  <div class="col-md-12  m-0 p-0 timelineTicks timelineNumbers timelinePositioning">
    <span class="minorTick" style="position:absolute;width:2px;height:10px;left:8px;">|</span>
    <span class="minorTick" style="position:absolute;width:2px;height:10px;left:12px;">|</span>
  </div>
</div>

特别注意它是怎么说的 style="width: 2110px;" 我已经尝试了所有我能找到的方法来获得实际宽度,但我得到的只是部分的宽度灰色背景。宽度由标尺上的 500 个刻度线和它们的位置控制,这些刻度线拉伸(stretch)外部容器以适应,但我不明白为什么我不能使用类似的东西获得容器的实际宽度:

$(".timeline-container").width()
$(".timeline-container").outerWidth()

是不是涉及bootstrap的问题?我正在尝试获取宽度,以便我可以将其下方容器的宽度设置为匹配,因为空间中包含可拖动的元素。我很想把它变成一个滑动时间线,就像从 visjs 链接的那样,但事实上我似乎无法理解这个基本部分。

获取此容器的宽度有什么技巧吗?

最佳答案

对于遇到类似问题的其他人,问题是 Bootstrap 不允许您获取容器的实际宽度。我最终删除了它的 Bootstrap 样式,然后使用我用来在标尺上定位刻度线的相同变量设置宽度。

此外,如果您正在寻找一种水平滚动内容的好方法,我使用了这个插件,它几乎可以无缝运行,而无需对容器中鼠标位置的 JavaScript 计算进行任何其他修改。 http://manos.malihu.gr/jquery-custom-content-scroller/

还有几个像这样的:https://github.com/vitch/jScrollPane , 但与上面的元素相比,这些元素似乎有点过时了。

关于javascript - 横向溢出滑动面板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41912728/

相关文章:

javascript - 根据页面更改更改下拉值

android - AVD : Is there an inspector?

css - 关于 HTML 5 主题名称 SVG

javascript - jQuery 调整大小和定位当前浏览器窗口

JavaScript Zlib 解压

javascript - JSLint "eval is evil."替代品

javascript - 如何重启 Bootstrap 之旅?

javascript - 访问另一个文件中函数内的 var 函数

java - jquery 表单提交到 servlet

javascript - Bootstrap 滚动时固定导航栏在顶部