Прокручиваешь ли кто-нибудь в стиле Google Maps? - PullRequest
19 голосов
/ 16 сентября 2008

Я ищу какой-нибудь плагин JavaScript (желательно jQuery) для прокрутки изображения, так же, как Карты Google .

Я могу сделать изображение перетаскиваемым, но затем при перетаскивании вижу все изображение, даже если родительский div равен overflow:hidden.

Любая помощь будет принята с благодарностью!

Ответы [ 7 ]

10 голосов
/ 23 июня 2010

(Я супер опоздал на эту мертвую вечеринку, но эй, я нашел эту страницу через поиск, так что ...)

Плагин Scrollview, предложенный mooware, не работает для меня.

Однако Dragscrollable сделал: http://plugins.jquery.com/project/Dragscrollable

Попробуйте демонстрацию

3 голосов
/ 20 августа 2009

Я могу немного опоздать на вечеринку, но я просто искал то же самое. Я наткнулся на scrollview для jquery, он отлично работает и выполняет точно такую ​​же перетаскивание в Google-карты для перетаскивания прокрутки.

3 голосов
/ 16 сентября 2008

Ознакомьтесь с Google Maps Image Cutter Он может взять любое изображение или цифровую фотографию и разрезать его на плитки, которые отображаются на карте Google. Может быть, это быстрый способ сделать то, что вам нужно ...

2 голосов
/ 16 сентября 2008

Для хорошего описания базовой технологии посмотрите главу 4 (если я правильно помню) книги прагматических программистов Pragmatic Ajax .

Вы увидите, как нарезка и нарезка изображений работают под крышками. И масштабирование.

2 голосов
/ 16 сентября 2008

Вы можете использовать API карт Google ... они позволяют использовать его с пользовательскими изображениями. И вы можете выбрать, показывать элементы управления или нет.

РЕДАКТИРОВАТЬ: нашел достойный учебник о том, как это сделать. http://mapki.com/wiki/Add_Your_Own_Custom_Map

1 голос
/ 16 сентября 2008

Это связано не столько с javascript, сколько с CSS-кодированием .

Попробуйте несколько экспериментов с использованием только HTML и CSS, чтобы правильно обрезать изображение, а затем добавьте JavaScript для его перемещения.

Если вы не можете заставить его обрезать HTML или переместить с постом javascript простейшую демонстрацию проблемы, которую мы здесь можем отладить.

Без кода мы снимаем в темноте.

0 голосов
/ 19 сентября 2008

Карты Google используют изображения, нарезанные на блоки, которые динамически загружаются, когда пользователь перемещается в разных направлениях. Google Maps Image Cutter , о котором упоминает Пол Диксон, - инструмент, который вам нужен для этого.

Если вы просто хотите панорамировать одно большое изображение, а не иметь дополнительную сложность разрезания изображения на блоки, тогда вместо использования свойства переполнения CSS следует использовать свойство clip . Это поддерживается во всех браузерах, о которых стоит задуматься, вплоть до IE4, если я правильно помню.

Обратите внимание: спецификация CSS2.1 показывает примеры со значениями прямоугольника, разделенными запятыми. Однако это не поддерживается IE6 (возможно, не IE7, либо). Однако все остальные браузеры понимают версию без запятых. Так что вместо

clip: rect(5px, 40px, 45px, 5px);

вы должны использовать

clip: rect(5px 40px 45px 5px);

для совместимости.

Вам нужен контейнер

, установленный в положение: относительно элемента image, который вы затем установите в положение: абсолютный.

Таким образом, основной метод состоит в том, чтобы обновлять верхнее и левое значения при перетаскивании пользователем, использовать их вместе с определенной шириной и высотой представления на изображении, чтобы создать соответствующую строку rect (), и обновить верхнее, левое и обрезать свойства свойства стиля элемента image.

Не делайте того, что я сделал, и пропустите «px» после значений в строке rect (). Мне понадобились годы, чтобы понять, почему это не сработало: -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...