0

我正在构建一个包含 OpenSeaDragon 的响应式图像查看器,它需要不同屏幕宽度下的不同平移行为。在狭窄的宽度不应允许平移,但当窗口较宽时,应激活平移。

一个简化的例子如下:

假设窗口相当宽,那么初始化期间的平移选项将是:

OpenSeaDragon({ panHorizontal: true, panVertical: true, ... });

(我知道这些是默认值,但为了清楚起见,将它们包括在此处。)

然后我可以检测是否应该matchMedia在窗口调整大小事件处理程序中激活/停用平移,例如:

// (Crude example, resize would need debouncing etc)
window.addEventListener('resize', function () {
  if (window.matchMedia('(min-width:800px)').matches) {
    // allow panning
  } else {
    // prevent panning
  }
});

我的问题是,是否可以稍后更改初始化 OpenSeaDragin 时提供的平移约束选项,而无需重新初始化查看器?如果做不到这一点,是否有不同的方法可以获得相同的效果?我已经深入研究了 OpenSeaDragon 文档和代码,但我看不到这样做的方法。

4

1 回答 1

1

是的,您可以直接更改这些属性而无需重新初始化,如下所示:

var viewer = OpenSeaDragon({ panHorizontal: true, panVertical: true, ... });

viewer.panHorizontal = false;
于 2017-03-03T18:09:25.980 回答