Проблема при работе с Jquery colorbox и динамическими изображениями, которые читаются через Aspx

для отображения полноразмерных изображений на моем сайте я решил использовать Jquery.colorbox, этот плагин хорошо работает со статическим расположением изображения, например:

<a rel="ex1" href="http://www.blah.com/image.jpg"><img src="http://www.blah.com/image_thumb.jpg"/></a>

но когда я хочу получить изображения из каталога, используя двоичное чтение/запись, этот плагин показывает мне данные мусора, а не скомпилированный jpg/изображение, например следующее:

<a rel="ex1" href="http://www.blah.com/getimage.aspx?id=1234"><img src="http://www.blah.com/getimage.aspx?id=1234"/></a>

и вот мой фрагмент кода для получения динамического изображения:

thumbLocation = DataHelper.GetItemPicture(recordID);
using (FileStream IMG = new FileStream(thumbLocation, FileMode.Open))
                        {
                            //FileStream IMG = new FileStream(thumbLocation, FileMode.Open);
                            byte[] buffer = new byte[IMG.Length];
                            IMG.Read(buffer, 0, (int)IMG.Length);
                            Response.Clear();
                            Response.ContentType = "image/JPEG";
                            Response.AddHeader("Content-Length", buffer.Length.ToString());
                            Response.BinaryWrite(buffer);
                            Response.End();}

как я могу исправить проблему?


person Seyed Vahid Hashemi    schedule 01.05.2011    source источник
comment
Вы проверили, не связана ли проблема с getimage.aspx? Это работает нормально?   -  person no.good.at.coding    schedule 01.05.2011


Ответы (2)


Используйте свойство photo в colorbox. Пример:

$('a.example').colorbox({photo:true});

Причина в том, что регулярное выражение colorbox для автоматического определения URL-адресов изображений не будет работать для такого типа URL-адресов (не содержит расширения типа изображения).

person Jack    schedule 02.05.2011
comment
@austin - это то же самое, что и мой второй вариант размещения .jpg в конце URL-адреса, который имел бы тот же эффект. - person Hogan; 02.05.2011
comment
классно! Я боролся с этим последние 2 часа. это спасет меня от хардкора. - person drewfrisk; 11.04.2013

Некоторые идеи

  • Измените тип контента на "image/jpeg" (прописные буквы могут иметь значение)

  • Добавьте следующее в конец URL-адреса &thisisan.jpg (Некоторые браузеры не будут создавать изображение, если они не увидят это в конце URL-адреса)

  • Протестируйте, поместив URL-адрес изображения прямо в браузер.

person Hogan    schedule 01.05.2011