![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| УТ |
|
|||
|
Unregistered |
привет,
есть несколько маленьких картинок, как сделать, чтобы при наведении на них мышкой, картинка появлялась большая? |
|||
|
||||
| Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 55 Всего: 137 |
Перехватываем событие, создаем массив картинок и определив откуда пришло событие - меняем ширину и высоту картинки - это пойдет?
|
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
А поточнее? Где/как появлялась? Здесь возможно обсуждалсь подобное: http://forum.vingrad.ru/index.php?showtopic=30523 -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Alx |
|
|||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
есть два самых популярных способа решения вопроса:
1. большая картинка появляется на той же странице рядом с маленькими (под или на) 2. Она открывается в новом popup-окне. первое и практичнее и красивее. Выбирай, что больше подходит - поможем! |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
Только сам вариант "при наведении" мне лично не нравиться, лучше при клике, люблю сам выбирать, особенно когда Инет ели-ели пыхтит.
Хотя, смотря что нужно достичь, описание задачи ведь нет.. -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Большие картинки лучше загружать по мере надобности, во время простоя грузить по одной заранее.
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
Sardar
А как определить, что система простаивает? -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 55 Всего: 137 |
Видимо я понял задачу - это что-то вроде ALT`а у <IMG>, только вместо текста - картинка...
Так? |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Red Dragon делаем массив картинок размером во все картинки на странице. Есть функция loadImage(src) которая либо берет загруженную картинку из массива, либо ставит ее в загрузку. Есть отдельный процесс(пусть работающий по window.setInterval, т.к. удобных навороченных событий ИЕ в других браузерах нет), проверяющий не грузится ли сейчас запрашиваемая юзром картинка(ту по которой кликнули), если нет, то ставит в загрузку следующую картинку.
Процесс загрузки остановить нельзя, так что если поставили загружатся картинку, а потом пользователь кликнул по другой картинке, то одноврменно будут загружатся обе картинки. Плюсы подхода: не особо напрягается и-нет юзера; картинки сохраняются в кеше, если юзер запросит, то она сразу появится. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Се ля ви |
|
||||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
я больше люблю просто оформлять скриптом зависимость имён связанных картинок (тогда на событии просто меняешь её адрес заменой по регэкспу) или специальным параметром в теге <img указывать адрес большой картинки, с которой она связана (вытаскивать его значение потом DOM-методом getAttribute('имя параметра') и присваивать картинке). Добавив к этому красивый механизм назначения событий элементам из скрипта, а не из HTML-кода, можно полностью избавить HTML-документ от скрипта, выведя их в отдельный файл:
Если не поставить при назначении события всё в "eval", то браузеры будут заменять ссылку "this" неправильно. Вот так кавбои хаггис победили сырость! :-) Только я присоединяюсь к остальным и высказваю скепсис по поводу юзабильности решения менять картинку на подводе мышки... Это сообщение отредактировал(а) Се ля ви - 4.10.2004, 11:29 -------------------- |
||||
|
|||||
| Sardar |
|
||||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Се ля ви начало не плохое, а далее сыровато
Никаких проблем с this нет, но есть проблема с загрузкой картинок во время Постепенную загрузку можно сделать так:
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
||||
|
|||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
Sardar
За поправки огромное спасибо) с меня пилюсик... Хотя без eval у меня всё-таки не пашет (там немного более сложная конструкция - посмотри http://trespass.sabotag.ru, попробуй сохранить и подредактировать, убрав евалы в функции "mainMenuInit()" - может, я напортачил в чём-то другом, но без евалов не понимает ни один браузер...) Насчёт догрузки, думаю, такая система - это уже слишком мощно для коммерческих сайтов... Если нужно просто прокэшировать картинку, думаю, проще создавать объекты Image без ссылок на них:
Это обеспечит закачку картинок в кэш и при необходимости показа они уже будут браться оттуда. Пример - http://trespass.sabotag.ru (так устроена левая менюшка). P.S. Таким образом, выявляются 2 проблемы связанные с подсветкой синтаксиса в форуме JavaScript - 1. Было бы неплохо подсвечивать синтаксис внутри eval`ов; 2. Не подсвечиваются регэкспы (/.*/ig). Это сообщение отредактировал(а) Се ля ви - 5.10.2004, 09:56 -------------------- |
|||
|
||||
| Sardar |
|
||||||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Скачал твою страницу, убрал eval'ы, все пашет без проблем. Версии твоих бразуеров?
Идеально работает для менюшек о прочих вещей где используются маленькие картинки, загрузка разом всегда быстрее. В данном случаем загружаем кучу больших картинок(допустим 30 штук 300х400) и возможно не сильн ужатых. В таком случае лучше грузить не напрягая пользователя. В твоем коде ты не сохраняешь ссылку на обьект Image, возможно Мозилла сразу удаляет обьект не загружая картинку, у меня на компе картинка грузится во время наведения мышкой...
eval'ы сделаем, а вот с регекспами по моему будет чуть сложновато... -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
||||||
|
|||||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
Версии браузеров - IE 5, Mozilla 1.7.1, Opera 7.54. Всё на win2k. Здесь все просто выдают ошибку...
Дома посмотрел в XP на IE 6 - вроде пашет, но странно - событие прописывается тока для первой картинки... Вобщем, наверное, лучше всё-таки оставлять eval`ы от греха подальше... -------------------- |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |