2017-04-10 77 views
0

我想为ReferenceStrip(属性:showReferenceStrip)有一个切换按钮。即使变量在运行时被更新,它也不会被直观地更新。 是否有某种方式更新它?openseadragon更新属性showReferenceStrip在运行时

<html> 
<button id="toggleRefStrip">Toggle Preview</button> 

    <div id="osd-container" style="width: 950px; height: 1200px;"></div> 
     <script src="openseadragon/openseadragon.min.js"></script> 
     <script type="text/javascript"> 
     var toggleRefStripBtn = document.getElementById("toggleRefStrip"); 
     toggleRefStripBtn.addEventListener("click",function(e){ 
      if(viewer.showReferenceStrip === true) { viewer.showReferenceStrip = false;} 
      else {viewer.showReferenceStrip = true;} 
      console.log("viewer.showReferenceStrip: " + viewer.showReferenceStrip); 
     }); 
      var viewer = OpenSeadragon({ 
       crossOriginPolicy: 'Anonymous', 
       visibilityRatio: 1.0, 
       showRotationControl: true, 
       defaultZoomLevel: 1.6, 
       minZoomImageRatio: 0.4, 
       //zoomPerScroll: 1, //deactivate mouse/finger zooming 
       id: "osd-container", 
       tileSources: ["images/T/1.dzi", "images/T/2.dzi", "images/T/3.dzi", "images/T/4.dzi"], 
       sequenceMode: true, 
       showReferenceStrip: false, 
      }); 
     </script>  
</html> 

回答

1

看起来在OSD中没有直接的功能(虽然你肯定可以提出问题或补丁来添加这样的东西)。好像你也许可以隐藏,像这样的东西的referenceStrip:

viewer.referenceStrip.element.style.display = 'none'; 

...,并显示它:

viewer.referenceStrip.element.style.display = 'block';