JS - 用instanceof显示图像或视频?
问题描述:
我越来越喜欢这个cloudinary图像/视频ID:JS - 用instanceof显示图像或视频?
<?php echo cloudinary_url($_upload->getPublicId()); ?>
这给像网址: 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可能能够做到这一点,但我从来没有使用过它。任何帮助将不胜感激
答
假设$_upload
的来源是上传响应比你也有resource_type
值。您需要将值resource_type
与公共ID一起用于区分资源(图像,视频或原始资源)。然后,您可以使用开关盒来生成正确的标签。
例如,
<!-- language: lang-php -->
switch ($result["resource_type"]) {
case "image":
// generate image tag
break;
case "video":
// generate video tag
break;
}