javascript - 如何使 dhtmlx 布局响应?

标签 javascript twitter-bootstrap-3 responsive-design dhtmlx

我的问题:我使用 Bootstrap 和 DHTMLX 构建一个 Web 应用程序,该应用程序有一个主页、侧边栏和不同的其他页面,我在其中使用 DHTMLX 构建布局、网格,我使用其他DHTMLX 组件。我设法让我的主页响应,其他 HTML 组件也可以在不同的设备上完美显示,但我的问题是 DHTMLX 布局和网格永远不会响应!我一直在寻找并试图找到一种使其响应的方法,因为我有很多页面,但每个页面都可以有 DHTMLX 的布局模式(主要使用 1C、2U、3L、3T、3U 多级布局)也是)

我想做什么:好吧,我注意到了一些事情,如果我设法根据使用的不同媒体动态更改 DHTMLX 布局,这可能是一个解决方案,例如:在其中一个页面上我有一个2U 布局在桌面屏幕上显示得很好,但在智能手机设备上显示得非常糟糕 - 较窄的媒体 - 因此 2U 必须转换为 2E,这样至少更易于查看和使用

我的问题 - 或问题 -:我是否正在考虑使我的 Web 应用程序具有响应性的最愚蠢的方法,或者我正在尝试做的事情是否与响应性概念有关?

这不是讨论 - 我不希望我的问题被关闭 - 我只需要一个答案来指导我以正确的方式,但是我非常感谢在正确的地方进行答案讨论。

最佳答案

您应该能够将 onresize 处理程序与 onload 处理程序一起使用。每次调整窗口大小时,您只需卸载布局并重新创建它:

<script>
  var layout
  var currentPattern

  function setLayout() {
    var width = window.innerWidth

    if (width < 600) {
      var pattern = "2E"
    } else {
      var pattern = "2U"
    }

    if (pattern == currentPattern) {
      return
    } else {
      currentPattern = pattern
    }

    if (layout) {
      layout.unload()
    }

    layout = new dhtmlXLayoutObject({
      parent: "your-layout-id",
      pattern: pattern
    })
  }

  window.onresize = setLayout
</script>
<body onload="setLayout()">
  <div id="your-layout-id">...</div>
</body>

关于javascript - 如何使 dhtmlx 布局响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34716603/

相关文章:

javascript - 是否可以卸载 JavaScript?

javascript - jQuery - 获取元素的 ID,如果它等于值,则添加链接

javascript - Backbone : Saving an entire collection to non-RESTful server

javascript - NodeJS 域错误处理未拾取 ReferenceError

css - 如何处理带有边距的响应式/流体图像?

html - 对 bxslider 的其中一个步骤感到困惑

css - 附加侧边栏覆盖 Angular Material flex 行

php - Bootstrap 下拉导航仅适用于动态导航中的当前页面

javascript - 调整窗口大小时无法阻止 div 下拉

html - 具有固定位置的响应居中