【问题标题】:JS - Display either image or video with instanceof?JS - 使用 instanceof 显示图像或视频?
【发布时间】:2017-01-24 15:45:48
【问题描述】:

我得到这样的云图像/视频 ID:

<?php echo cloudinary_url($_upload->getPublicId()); ?> 

给出如下 URL: http://res.cloudinary.com/dviiu412p/image/upload/v1/campaigns/1/jfle7ilxkyfmj9mjggwa

然后将其渲染为图像或视频,如下所示:

<img class="lazy-load"
    src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="
    data-src="<?php echo cloudinary_url($_upload->getPublicId()); ?>" />

<video class="lazy-load" controls>
    <source data-src="<?php echo cloudinary_url($_upload->getPublicId(), array("resource_type"=>video, "height"=>230, "width"=>340, "format"=>webm)); ?>" type="video/webm">
</video>

问题是我只想提供图片或视频(无论哪个是用户上传的)。有没有办法可以做到这一点?我在想 instanceof 可能能够做到这一点,但我以前从未使用过它。任何帮助将不胜感激

【问题讨论】:

    标签: javascript php cloudinary


    【解决方案1】:

    假设$_upload 的来源是上传响应,那么您也将拥有resource_type 值。您需要 resource_type 的值加上公共 ID 来区分资源(图像、视频或原始)。然后,您可以使用 switch-case 块来生成正确的标签。

    例如,

    <!-- language: lang-php -->
    
    switch ($result["resource_type"]) {
      case "image":
        // generate image tag
        break;
      case "video":
        // generate video tag
        break;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-09-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-23
      • 1970-01-01
      • 2015-10-03
      相关资源
      最近更新 更多