5

我有一个定义如下的图像:

<div id="logo" class="exhibit-flowingFacet">
  <div class="wrapper">
    <img src="path/to/the/image/logo.png">
    </img>
  </div>
</div>

我想用 javascript 通过它的 src 获取图像并隐藏它。

function hideImage() { 
  if (document.getElementById() 
  {
    if (document.getElementById('logo').getElementsByClassName('wrapper').src=="path/to/the/image/logo.png")
    {
      document.style.visibility = 'hidden';
    }  
  }
};

hideImage();

但是代码没有用!!任何的想法?

4

5 回答 5

4

使用 jQuery,您可以编写

$('img[src="path/to/the/image/logo.png"]').hide();
于 2013-09-11T15:02:27.267 回答
0

您必须确保使用此代码在标题中包含指向 jquery 库的链接

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

如果您希望它不在屏幕上呈现,您可以在 css 中显示:无,只需将图像源传递给函数

function hideImage(imageSrc) { 
$('img[src=" + imageSrc + "]').css("display","none");

}

并使用重新打开它

$('img[src="path/to/the/image/logo.png"]').css("display","block");
于 2013-09-11T15:04:53.887 回答
0

你可以试试这个: -

$('img[src="path/to/the/image/logo.png"]').css("display","none");

或试试这个: -

    this.style.display = "none";
于 2013-09-11T15:05:42.697 回答
0

getElementsByClassName('wrapper')是一个数组,这就是为什么你必须访问src第一个元素的 - 属性 - 至少在你的情况下。

if (document.getElementById('logo').getElementsByClassName('wrapper')[0].src=="path/to/the/image/logo.png")
于 2013-09-11T15:06:30.573 回答
0

试试这个脚本:

function hideImage() {
    var path = 'path/to/the/image/logo.png';
    var img = document.getElementById('logo').getElementsByTagName('img')[0];
    if (img && img.getAttribute('src').indexOf(path) > -1) {
        img.style.visibility = 'hidden';
    }
}

if (window.addEventListener) {
    window.addEventListener('load', hideImage, false);
} else if (window.attachEvent) { // for older IE8-6 compatibility
    window.attachEvent('onload', hideImage);
}

JSFiddle

于 2013-09-11T15:26:57.847 回答