Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Проблема со скриптом отображения картинок


Автор: Hotdog 24.4.2007, 18:41
Произошел затык в работе. Ищу вашей помощи.
Коротко:
На сайте есть форма, с помощью которой можно добавлять картинки. Так как картинок может быть много, то было решено сделать небольшую иконку предпросмотра для каждой добавленой картинки. Использую для этого следующий HTML:
Код
<input type="file" id="test1" size="60" maxlength="255" onchange="test(this.id, 'test2')">
<img src="pics/unknown.png" id="test2" height="100">


и JavaScript код:
Код
function test(b, i)
{
    browse = document.getElementById(b);
    image = document.getElementById(i);
    x = "file:///" + browse.value;
    image.src = x;
}


Тем не менее, эта функция не хочет отрабатывать в Опере и Мозилле, а в ИЕ 7 отрабатывает, но только при выборе картинок с сетевого диска. Не могу понять, что я делаю неправильно.

Автор: vasac 24.4.2007, 19:55
Ты лезешь в локальную файловую систему, вот что неправильно.

Автор: Hotdog 24.4.2007, 21:49
Т.е. это невозможно в принципе?

Автор: Mymik 24.4.2007, 23:04
Hotdog, попробуй вытаскивать из картинки с id="test2" src после чего его надо разобрать на составляющие -- тем самым ты сможешь понять где ты находишься и не поломать адресацию. И после этого уже построить новый src.
Грубо говоря тебе нужно будет забирать к примеру http://localhost/ и добавлять туда адрес что написан в input. А если сайт будет локально запускаться, то тебе нужно забрать file:///C:/temp/mySite...


Цитата(Hotdog @  24.4.2007,  18:41 Найти цитируемый пост)
Так как картинок может быть много, то было решено сделать небольшую иконку предпросмотра для каждой добавленой картинки. 

vasac, ключевое слово тут это "добавленной" т.е. картинки уже на сервере хранятся.

Автор: Hotdog 25.4.2007, 09:55
Нет. Наверное, я не очень точно выразился, но vasac понял меня верно. Я действительно лезу в локальную файловую систему. Как я уже понял, на таком уровне это нельзя реализовать.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)