谁能告诉我如何在不重新加载页面的情况下单击按钮将全景图像转换为新图像?

我正在使用的全景照片查看器是https://photo-sphere-viewer.js.org

var PSVUtils = PhotoSphereViewer.Utils,
      fov = 70,
      PSV = new PhotoSphereViewer({
        panorama: 'images/vr-min.jpg', //want to change this image
        container: 'photo360',
        navbar: 'autorotate zoom download fullscreen',
        caption: 'vr',
        mousewheel: false,
        size: 800,
        time_anim: false,
        gyroscope: true,
        // webgl: PSVUtils.isWebGLSupported(),
        move_speed: 3,
        default_fov: fov + .01,
        min_fov: fov,
        max_fov: fov + .01,
        markers: [
          {
            // html marker with custom style
            id: 'text',
            longitude: -1.4,
            latitude: 0.12,
            html: '<a href="#" style="color:#fff;" onclick="myFunction()"><img id="myimg" src="https://png.icons8.com/color/260/circled-play.png" width="30" height="30" /></a>',
            anchor: 'bottom right',
            style: {
              maxWidth: '20px',
              color: 'white',
              fontSize: '20px',
              fontFamily: 'Helvetica, sans-serif',
              textAlign: 'center'
            },
            tooltip: {
              content: 'Watch this video for more details',
              position: 'right',
    height: '500px'
            }
          }
        ]
      });


我不知道该怎么办才能替换这张图片。提前致谢。

最佳答案

PSV.setPanorama('new-pano.jpg', null, true);


将为您完成工作。

假设您有一个标识为“ goto-pano”的标记,那么,

PSV.on('select-marker', (marker) => {
  if (marker.id === 'goto-pano') {
    PSV.setPanorama('new-pano.jpg', null, true);
  }
});


或者您也可以在其他任何按钮单击事件中执行此操作。

10-06 07:23