未捕获的TypeError:无法设置null图像库的属性'src'

时间:2016-09-02 15:46:05

标签: javascript jquery html

请原谅我的“新事物”,我不是交易的编码人员,只是我也有代码。

话虽如此,我正在尝试在我们基于网络的网络监控工具(SolarWinds NPM)中创建一个图库,以便我们在我们的网站上查看我们设备的图片。我在“自定义HTML资源”中执行此操作,这实际上是一个iframe。

图库应使用父页面的标题作为变量来确定在Web服务器上查找图像的文件夹。

当我尝试运行以下操作时,我在Chrome控制台中收到一条错误消息,指出“未捕获的TypeError:无法为属性的'src'设置属性'。”

HTML:

<html>
<head>
<style>
div.img {
    margin: 5px;
    border: 1px solid #ccc;
    float: left;
    width: 180px;
}

div.img:hover {
    border: 1px solid #777;
}

div.img img {
    width: 100%;
    height: auto;
}

div.desc {
    padding: 15px;
    text-align: center;
}

.responsive {
    padding: 0 6px;
    float: left;
    width: 24.99999%;
}

@media only screen and (max-width: 700px){
    .responsive {
        width: 49.99999%;
        margin: 6px 0;
    }
}

@media only screen and (max-width: 500px){
    .responsive {
        width: 100%;
    }
}
</style>
</head>
<body>
<div class="img">
  <a target="_blank" href="">
    <img id="Image1" src="image1.png"  width="300" height="200">
  </a>
</div>

<div class="img">
  <a target="_blank" href="">
    <img id="Image2" src="image2.png" width="300" height="200">
  </a>
</div>

<div class="img">
  <a target="_blank" href="">
    <img id="Image3" src="image3.png" id="Image3" width="300" height="200">
  </a>
</div>

<div class="img">
  <a target="_blank" href="">
    <img id="Image4" src="image4.png" width="300" height="200">
  </a>
</div>
<script src="SiteDBpics\Gallery.js"></script>
</body>
</html>

这是JavaScript:

var title = window.parent.document.getElementsByTagName("title")[0].innerHTML;
document.getElementById("Image1").src = "SiteDBpics/" + title + "/image1.png";
document.getElementById("Image2").src = "SiteDBpics/" + title + "/image2.png";
document.getElementById("Image3").src = "SiteDBpics/" + title + "/image3.png";
document.getElementById("Image4").src = "SiteDBpics/" + title + "/image4.png";

任何帮助将不胜感激!

EDIT1:HTML改为反映“A. Wolff”的建议。

EDIT2:我发现了这个问题! 我有一些格式错误,我在声明图像URL时忘记了HTML部分中的一些引号。我还必须更改脚本中的文件路径详细信息。

1 个答案:

答案 0 :(得分:1)

你错过了第二个,在第47行关闭了目标= _blank href =“的双引号。这就是抛弃你的DOM创建。

此外,您的文件中没有“document.getElementsByTagName('title')[0]”正在寻找的标题标记。