2013-05-05 52 views
1

我打算用base64图片在fancyboxFancybox2 Base64图像在IE中不工作

我的代码是这样的:

<script type='text/javascript' src='http://code.jquery.com/jquery-1.8.3.js'></script> 
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.4/jquery.fancybox.css?v=2.1.4" type="text/css" media="screen" /> 
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.4/jquery.fancybox.pack.js?v=2.1.4"></script> 

<a class='fancybox' rel='album' href='data:image/gif;base64,R0lGODlhUAAPAKIAAAsLav///88PD9WqsYmApmZmZtZfYmdakyH5BAQUAP8ALAAAAABQAA8AAAPb 
WLrc/jDKSVe4OOvNu/9gqARDSRBHegyGMahqO4R0bQcjIQ8E4BMCQc930JluyGRmdAAcdiigMLVr 
ApTYWy5FKM1IQe+Mp+L4rphz+qIOBAUYeCY4p2tGrJZeH9y79mZsawFoaIRxF3JyiYxuHiMGb5KT 
kpFvZj4ZbYeCiXaOiKBwnxh4fnt9e3ktgZyHhrChinONs3cFAShFF2JhvCZlG5uchYNun5eedRxM 
AF15XEFRXgZWWdciuM8GCmdSQ84lLQfY5R14wDB5Lyon4ubwS7jx9NcV9/j5+g4JADs=' title='Description'"><img src='data:image/gif;base64,R0lGODlhUAAPAKIAAAsLav///88PD9WqsYmApmZmZtZfYmdakyH5BAQUAP8ALAAAAABQAA8AAAPb 
WLrc/jDKSVe4OOvNu/9gqARDSRBHegyGMahqO4R0bQcjIQ8E4BMCQc930JluyGRmdAAcdiigMLVr 
ApTYWy5FKM1IQe+Mp+L4rphz+qIOBAUYeCY4p2tGrJZeH9y79mZsawFoaIRxF3JyiYxuHiMGb5KT 
kpFvZj4ZbYeCiXaOiKBwnxh4fnt9e3ktgZyHhrChinONs3cFAShFF2JhvCZlG5uchYNun5eedRxM 
AF15XEFRXgZWWdciuM8GCmdSQ84lLQfY5R14wDB5Lyon4ubwS7jx9NcV9/j5+g4JADs=' style='border:0px;vertical-align:middle;margin-top:4px;margin-right:4px;margin-bottom:4px;margin-left:4px;'> </a> 

它工作在所有浏览器(IE,火狐,Safari,Chrome浏览器),但如果以base64图像较大(数据:图像/ JPG超过60000个字符),它不能在IE中显示。

这种情况下的任何经验和解决方案?

谢谢 LW

+1

有在Internet Explorer中的图像编码支持Base64限制。为什么首先使用base64而不是真实图像?这些有很多优点。 – 2013-05-05 07:57:40

+0

这不是一个fancybox问题,是一个IE限制。 – JFK 2013-05-05 17:52:55

+0

感谢Pekka和JFK的评论。这是因为我将图像作为二进制数据存储在mysql中,每个记录与自己的图像匹配。 – 2013-05-06 04:28:22

回答

1

你可以试试这个:一个ID属性添加到您的图片和链接到这个ID

<a class='fancybox' rel='album' href='#ImgBase64' title='Description'"> 
<img src='data:image/gif;base64,...' ID='ImgBase64'> 
</a>