【发布时间】:2018-05-07 19:16:53
【问题描述】:
我正在设计一个在服务器上显示任何歌曲图标的网站。我创建了一个 php 文件,它返回歌曲的图像(如果存在)。我的 HTML 代码:
<img src="/image.php?song=SongName" width="100" height="100">
如果给定歌曲有翻唱图标,则 img 元素会显示该图标。如果没有,我会得到一个 100x100 的空图像框。
现在,我想在javascript中指定,如果url地址:'/image.php?song=SongName'返回null(如果歌曲上没有图像封面),以隐藏img。如何实现?
谢谢。
PS。到目前为止我尝试过的代码(img url 格式有一点 php):
var picElement = document.getElementById("picture");
picElement.src = "/image.php?song=$nameFile";
if(picElement.src == null){
picElement.style.display = "none";
}else if(picElement.src !=null){
picElement.src = "/image.php?song=$nameFile";
picElement.style.height = "20vh";
picElement.style.width = "20vh";
picElement.style["boxShadow"] = "3px 3px 10px 1px #e2b674";
}
image.php下的php代码:
<?PHP
$song= $_GET["song"];
require_once("getID3-1.9.15/getid3/getid3.php");
$Path= .$song.".mp3";
$getID3 = new getID3;
$OldThisFileInfo = $getID3->analyze($Path);
if(isset($OldThisFileInfo['comments']['picture'][0]))
{
header('Content-Type: ' . $OldThisFileInfo['comments']['picture'][0]['image_mime']);
echo $OldThisFileInfo['comments']['picture'][0]['data'];
die;
}?>
【问题讨论】:
-
所以它返回错误?比使用 onerror
-
您是如何尝试自己解决这个问题的?有示例代码吗?
-
如果图像不存在,我希望它是 404,并且 onerror 处理程序可以将图像路径设置为另一个图像 src。如果您只是返回一个空白图像,那么解决问题会变得更加困难。
标签: javascript php image error-handling