2010-09-02 89 views
2

我被困在一个非常奇怪的问题,我不知道究竟发生了什么... 不幸的是,我不能链接到有问题的页面,因为它是内部开发,但问题如下:Chrome:显示:内嵌奇怪...

我有3个链接的页面 - A,B和C. 每个这些链接到动态生成的文件,并且它可以很容易需要几秒钟的这些文件被创建。因此,我们将这些文件生成功能放在单独的页面上。 A,B和C请求相关页面; A,B和C请求相关页面;当页面生成了所需的文件时,它会以用户下载的文件名作为响应。到目前为止,这么好 - 所有这些都有效。

为了直观地指出活动,当这些操作开始/停止时,我们显示/隐藏一个小gif。 (A,B和C各有它自己的图标)。 它们通过启用:通过

.getElementById().style.display = 'inline'; 

和残疾人:

.getElementById().style.display = 'none'; 

此作品完美的B和C ---但不是一个!我知道它找到了正确启用的图像(通过alert()和什么会在一秒钟内变得清晰),并且我也知道样式也被设置(出于同样的原因),但是gif只是没有做到这一点, t出现。 此外,这只发生在Chrome浏览器 - Firefox和IE都显示图标就好。 而且,比这更多 - 如果我使用

.getElementById().style.display = 'block'; 

而不是

.getElementById().style.display = 'inline'; 

Chrome会显示图像,以及!我不想使用block,因为它将gif移动到它自己的丑陋的一行,但至少它证明了我拥有正确的图像等等。而且,如果我不通过JS来更改显示,而只是使用display:inline(而不是当前显示:无)来创建gif,它在Chrome中显示得很好。 所有这一切使我认为JS + Chrome在某种程度上是问题---但我不确定。 :/

哦,还有一点奇怪 - 如果我点击A,什么都不会发生。如果我然后点击B,那么A的gif就会出现!

总而言之,我不知道发生了什么,但我希望这里有人能够启发我!

在此先感谢!

编辑:我已经把样本代码上http://jsbin.com/uzosu3/edit

+0

嗯。您可能想要提供比这更多的代码 - 例如JavaScript使用的实际HTML。 :)这可能有助于他人诊断问题。 – pinkgothic 2010-09-02 08:51:23

+0

您可以将呈现的xhtml发布到http://jsbin.com或http://jsfiddle.net,否则我们会在黑暗中进行猜测。 – 2010-09-02 10:06:29

+0

对不起,它没有在第一个地方,但我真的没有想到任何代码会做很多好东西... 无论如何,我已经粘贴在http://jsbin.com/uzosu3/edit上的东西 - 我已经稍微编辑了html以删除任何可能对人敏感的内容,但所有主要元素(不包括实际图片... :)都在那里。 链接A是与ID =“TGIF”的GIF链接,B是下面的一个,然后C ... 干杯:) – Fafnr 2010-09-02 14:22:42

回答

-1

如果你不想因为它推动图像下移一行使用块。

使用

.getElementById().style.display = 'inline-block'; 

可能要检查它在IE浏览器虽然尝试。

+0

Thanls的提示,但这显示了同样的奇怪行为出现 :/ – Fafnr 2010-09-03 06:00:58