Tôi nhận được một ảnh được mã hóa Base64 từ một phương pháp. Và tôi thêm nó theo chương trình như là một src của một hình ảnh. Sau đó, tôi sử dụng plugin jQuery lightBox để hiển thị bản xem trước của hình ảnh. Trong Firefox và Chrome mọi thứ đều hoạt động tốt, nhưng trong Internet Explorer 9 vì bản xem trước hình ảnh chỉ hiển thị một vài dòng hình ảnh của tôi.'dữ liệu: hình ảnh/jpg; base64' và xem trước hình ảnh jQuery trong Internet Explorer
Vì vậy, hình ảnh không được hiển thị toàn bộ; nó chỉ hiển thị một phần nhỏ của nó. Những người còn lại biến mất, và có vẻ như có thứ gì đó đã ngừng tải nó vào một lúc nào đó. Base64 là tốt, trong các trình duyệt web khác toàn bộ hình ảnh xuất hiện, và chỉ có vấn đề với Internet Explorer.
Trong aspx của tôi:
<script type="text/javascript">
$(function() {
$('#gallery a').lightBox({ fixedNavigation: true });
});
</script>
<div id="gallery">
<a id="aPhoto" runat="server">
<img alt="photo" id="imgPhoto" runat="server" /></a>
</div>
Trong file aspx.cs của tôi:
Vì vậy, tôi chèn một cái gì đó như thế này vào file aspx:
imgPhoto.Attributes.Add("src", "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==");
Làm thế nào để sửa đổi nó để làm việc với Internet Explorer?
IE8 chỉ có thể hỗ trợ lên đến 32KB của dữ liệu hình ảnh, mặc dù IE9 nên ok. Bạn có chắc là bạn không có bản sao dữ liệu bị lỗi trong bộ nhớ cache bằng cách nào đó không? –
Bạn có trang thử nghiệm công khai không? Sử dụng bảng điều khiển Công cụ dành cho nhà phát triển F12, kiểm tra thuộc tính SRC của hình ảnh được đề cập. URL hình ảnh * đầy đủ có xuất hiện ở đó không? – EricLaw
@adam. Có, tôi chắc chắn - cùng một hình ảnh với Firefox và Chrome hiển thị ok. – madMax