更改链接到图像的页面背景?

时间:2009-09-12 18:29:04

标签: html

所以,使用IE作为我的浏览器,我有一个简单的链接......

<a href="test.jpg">Image Link</a>

是否可以更改此图片加载的页面的背景颜色?

我想避免为图片创建一个全新的页面。

编辑对此感到抱歉。我觉得很清楚。 Pascal和Guffa一样正确。

来自Pascal的

......“我明白他希望在新页面中打开图像,并且该页面具有特定的背景颜色”

@David Andes,你是正确的,因为链接暗示了正在发生的事情(“我知道图像是锚本身的一部分”),即图像将在新页面中打开。但是,您引用的语言不正确。

“更改此页面加载的图像的背景。”

最终,我想更改打开此图片的页面的背景颜色。

所以这篇文章评论的答案确实是(1)想要通过点击加载到“图片链接”的页面来改变背景颜色,

5 个答案:

答案 0 :(得分:3)

当有人点击这样的链接时,浏览器唯一加载的是图像本身 - 而不是任何“页面”。

这意味着背景颜色取决于浏览器,你无能为力。

如果您希望图像显示在任何其他“页面”中,则必须对该图像进行编码 - 如果您有多个图像,则不需要为每个图像编写不同的页面:一个通用的页面,能够显示任何图像,并收到一个参数,指示应该显示哪个图像,这样做。


只是为了好玩:在Firefox下,可以通过转到about:config,搜索browser.display.background_color属性并更改它来更改背景颜色。

当然,作为网站管理员,您无法控制它:只有用户才能更改它,因为他的firefox实例。

答案 1 :(得分:1)

那是不可能的。作为替代方案,您可以使用许多基于javascript的图像查看器之一,例如Lightbox 2

答案 2 :(得分:1)

不,那是不可能的。如果你想影响图像的显示方式(背景颜色,边距等等),你必须为它创建一个页面。

如果您有许多图像以这种方式显示,则无需为每个图像创建一个页面。您可以使用单个页面并发送图像以显示为查询字符串。

答案 3 :(得分:1)

不能用直接的HTML做到这一点。

现在大多数人解决这个问题的方法是使用javascript媒体查看器(例如Shadowbox)来达到相同的效果(因为没有人想为每张图片制作一个页面)。

答案 4 :(得分:1)

我不完全确定您的最终目标是什么,但您可以使用类似于以下内容的代码基于href设置影响浏览器文档(而不是窗口)的背景颜色:

<script type="text/javascript">
 function setBackgroundColorIfAppropriate(anticipatedURL, colorToUse)
 {
   var allAnchorTags = document.getElementsByTagName("a");

   for(var i = 0; i < allAnchorTags.length; ++i)
   {
     if(allAnchorTags[i].href === anticipatedURL)
     {
       document.body.style.backgroundColor = colorToUse;
       break;
     }
   }
 }

 window.onload = function()
 {
   setBackgroundColorIfAppropriate("test.jpg", "blue");
 };
</script>

href属性可能与您在标记中指定的内容不完全匹配,因此请小心并提醒锚元素的href属性的内容,以查看它们是否符合预期。