如何在模态窗口中显示图片

运行机制

要让用户更方便地查看图片,可通过自定义HTML代码设置在模态窗口中打开图片。您可以使用现有解决方案添加自有代码

如何获取

使用现有解决方案

  1. 发布商帐户中打开您的项目。
  2. 在侧边栏中单击建站器
  3. 单击打开建站器
  4. 在所需区块中添加图片。可以是以下区块:
    • 描述
    • 图库
  5. 自定义代码区块中插入以下代码:
Copy
Full screen
Small screen
<script>
(function () {
  var blocks = ['.block--description', '.block--gallery'];

  var style = document.createElement('link');
  style.rel = 'stylesheet';
  style.href = 'https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.css';
  document.getElementsByTagName('head')[0].appendChild(style);

  var script = document.createElement('script');
  script.type = 'text/javascript';
  script.src = 'https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.js';
  script.addEventListener('load', function () {
    var fancyBoxClass = 'image-fancybox';
    blocks.forEach(function (block) {
      $(block)
        .find('[data-bg]')
        .toArray()
        .forEach(function (element) {
          var url = element.getAttribute('data-bg')
            .replace('url(', '')
            .replace(')', '')
            .replace('"', '')
            .trim();
          if (url === '') {
            return;
          }
          $(element)
            .parent()
            .wrap('<a style="width: 100%; height: 100%;" class="' + fancyBoxClass + '" href="' + url + '"></a>');
        });
    });

    $('.' + fancyBoxClass)
      .fancybox();
  }, false);
  document.getElementsByTagName('body')[0].appendChild(script);
})();
</script>

  1. blocks参数中,指定要应用模态窗口的区块的CSS类名称。名称使用逗号分隔。如网站有多个相同区块,则这些区块均将应用这些设置。可以是:
    • .block--description(描述区块)
    • .block--gallery(图库区块)
  2. 单击预览查看更改。

观看本说明的视频教程:


添加自有代码

  1. 在建站器中,单击添加区块,然后选择自定义代码
  1. 在区块中插入自己的代码。
本文对您的有帮助吗?
谢谢!
我们还有其他可改进之处吗? 留言
非常抱歉
请说明为何本文没有帮助到您。 留言
感谢您的反馈!
我们会查看您的留言并运用它改进用户体验。

有用链接

上次更新时间: 2024年3月26日

发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。

报告问题
我们非常重视内容质量。您的反馈将帮助我们做得更好。
请留下邮箱以便我们后续跟进
感谢您的反馈!