| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Вёрстка веб-сайтов > Ссылка вывода на печать |
| Автор: Leia 5.9.2006, 21:26 |
| Помогите, плиз. Имеется html-страничка с небольшой фотографией. рядом должна быть ссылка - "распечатать фото". При нажатии на печать должно посылаться оригинальное изображение. Как сие реализовать? У меня пока только одна мысль - ссылка должна вести на оригинальное jpg изображение (большого формата) и как только оно загружается (на новой страничке) автоматически открывается окно печати. Да и это не знаю как осуществить технически. Если можно обойтись без открытия в новом окне оригинального изображения - еще лучше. Помогите, пожалуйста, буду очень признательна. :-) |
| Автор: skyboy 5.9.2006, 21:34 |
| javascript - метод print имеется в наличии у объекта window, как в IE, так и в Gecko. Т.е. либо необходимо загружать картинку во фрейм и вызывать document.frames[0].window.print(); или же (такой вариант сама предложила) создавать новый документ только с картинкой и по загрузке(событие onload для body) вызывать document.window.print(); |
| Автор: Leia 5.9.2006, 21:47 |
| ок, тогда можно поподробней, какой код и куда воткнуть? :-) |
| Автор: skyboy 5.9.2006, 22:15 |
| насколько далеко простирается (не)знакомство с javascript? полный скрипт писать не буду(да и не знаю специфики - потому не смогу), а обьяснять "с азов" лениво... в чём загвоздка? |
| Автор: Leia 5.9.2006, 22:17 |
хмхм.. очень далеко. ну очень. короче незнакома я с ним. :-)) |
| Автор: skyboy 5.9.2006, 22:41 | ||||||||
как страница реализована? я тебе уже 99% кода дал. осталось соввсем немного.
Какой код? У тебя на фреймах можно будет сделать, чтоб на фрейм - одно изображение? Тогда код будет тот, который я привёл.
Только номер фрейма может быть другим. Куда воткнуть?
Как ни странно, этот код должен вызываться кликом по "твоей" ссылке. Интересно, правда?
noscript.php сформирует сообщение о том, что для печати нужен включенный javascript и выдаст картинку, чтоб можно было распечатать "вручную". Если javascript включен, то в обработчике "return false;" предотвратит переход по ссылке после печати содержимого фрейма с картинкой. Если же фрейма нет, то надо создать окно... впрочем, код завтра уже напишу, как отосплюсь. |
| Автор: Leia 8.9.2006, 23:26 | ||
наверное я туплю, но у меня нет фреймов на странице. |
| Автор: skyboy 9.9.2006, 21:36 |
| хм. ты не понимаешь. я и не говорю, что у тебя есть фреймы. ты спрашиваешь: как печатать? я объясняю, что метод print() есть у объекта window, которое является свойством либо всей стрницы - document.window.print() [при использовании этого подхода необходимо формировать новое окно и пихать в него картинку], также свойство window есть у каждого фрейма на странице [значит, можно загружать картинку в отдельный фрейм на странице и печатать её(картинку) без создания дополнительного окна]. А как у тебя реализовано - это твоё сугубо личное дело. |