cmd Опубліковано: 21 січня 2013 Share Опубліковано: 21 січня 2013 JS функцию вызывать в callback добавления товара в корзину на странице товара: function animateImageToCart() { imagePosition = $('#image').position(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); // если корзина справа, то плюсуем, чтобы получить центр, иначе минусуем cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $('#image').attr('src') +'"></div>'); // вставляем картинку в самом низу страницы // моментально накладываем нашу новую картинку поверх существующей $('#imageToCart img').css({ 'position': 'absolute', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $('#image').width() + 'px', 'height': $('#image').height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $('#image').width() / 3, height: $('#image').height() / 3 }, 1000, function() { $('#imageToCart').remove(); }); } 5 Надіслати Поділитися на інших сайтах More sharing options... noVe Опубліковано: 22 січня 2013 Share Опубліковано: 22 січня 2013 Спасибо. Надіслати Поділитися на інших сайтах More sharing options... Metrik Опубліковано: 23 січня 2013 Share Опубліковано: 23 січня 2013 а в каком файле прописуется данный код? Надіслати Поділитися на інших сайтах More sharing options... zteprk Опубліковано: 24 січня 2013 Share Опубліковано: 24 січня 2013 а в каком файле прописуется данный код? Хотелось бы тоже чуточку подробней. в каком файле и после чего вставить данный код. спасибо! Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 24 січня 2013 Автор Share Опубліковано: 24 січня 2013 Ну, например, в product.tpl есть функция добавления товара в корзину. В callback вставить вызов animateImageToCart(). Только же не забудьте объявить animateImageToCart. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 cmd Вот если бы Вы ответили так, как ответили Вам в этой теме в посте №8 http://javascript.ru/forum/showthread.php?p=175122#post175117 то и Вам бы отвечали на это примерно так, как по выше выложенной ссылке пост №9, а не так. как в этой теме. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 26 січня 2013 Автор Share Опубліковано: 26 січня 2013 kegel, если бы вопрос был от человека с кармой 100, то я бы тоже не пожалел 10 минут на подробные комментарии. А вообще, создание самодельных хуков и вызывать функцию это задачи немного разной сложности. В последнем случае сложность практически нулевая. Что Вам не понятно в фразе "вызвать функцию в callback"? Строку назвать? Или Google скрывает информацию о том, что такое callback в ajax запросе? Я вообще этот код по просьбе noVe выложил... Он понял - вот и отлично. Думаю не только он. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 в какой строке это понятно, а вот как вызвать функцию animateImageToCart() в callback ($('#button-cart').bind('click', function() { $.ajax({...не понятно. Если не трудно, хотелось бы узнать. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 26 січня 2013 Автор Share Опубліковано: 26 січня 2013 Вызов это animateImageToCart() . Это и есть вызов. т.е. название и две скобочки. Перед тем как что-то вызывать нужно что-то объявить. Объявление - см первый пост. Самое забавное в этом, то что я могу 100 раз повторить одно и тоже разными словами, но найдется какой-то вопрошающий, который не поймет или не прочтет. А ещё 10 останутся недовольны потому, что слишком сложно объяснил... :-D 1 Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 Дело в том что с главной страницы анимация не работает, зашел в товар, там все ок. Вот что в заблуждение ввело. Интересно почему с главной не работает? + вродь дошло, надо в каждом модуле телодвижения повторять значит. Хотя не факт, направьте в нужное русло. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Так там и не будет работать так просто... Чтобы работало с главной надо... Ну, например, перехватывать положение курсора и редактировать функцию addToCart() в common.js... Я это на коленке написать не могу. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 27 січня 2013 Share Опубліковано: 27 січня 2013 Просто onclick надо навешивать через JS, а не через HTML. Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно Надіслати Поділитися на інших сайтах More sharing options... 4 weeks later... foruss Опубліковано: 21 лютого 2013 Share Опубліковано: 21 лютого 2013 Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно не должно и не будет. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 24 лютого 2013 Share Опубліковано: 24 лютого 2013 не должно и не будет. А если быть точнее? Как тогда это реализовать? Надіслати Поділитися на інших сайтах More sharing options... alexeyll Опубліковано: 26 лютого 2013 Share Опубліковано: 26 лютого 2013 Как возможно замедлить скорость анимации картинки при ее движении в корзину? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 прикольно, спасибо :) Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ жаль только с этим не разобрался :( .... как все таки его навешивать?? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 6 березня 2013 Share Опубліковано: 6 березня 2013 для анимации в категориях сделал путем добавления id="product_id" к картинкам, ну и в самой функции анимации вместо #image надо эти id использовать.... красотень теперь... и кстати теперь в модулях таких как акции и пр. достаточно картинкам добавить id="product_id" :) Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
noVe Опубліковано: 22 січня 2013 Share Опубліковано: 22 січня 2013 Спасибо. Надіслати Поділитися на інших сайтах More sharing options... Metrik Опубліковано: 23 січня 2013 Share Опубліковано: 23 січня 2013 а в каком файле прописуется данный код? Надіслати Поділитися на інших сайтах More sharing options... zteprk Опубліковано: 24 січня 2013 Share Опубліковано: 24 січня 2013 а в каком файле прописуется данный код? Хотелось бы тоже чуточку подробней. в каком файле и после чего вставить данный код. спасибо! Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 24 січня 2013 Автор Share Опубліковано: 24 січня 2013 Ну, например, в product.tpl есть функция добавления товара в корзину. В callback вставить вызов animateImageToCart(). Только же не забудьте объявить animateImageToCart. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 cmd Вот если бы Вы ответили так, как ответили Вам в этой теме в посте №8 http://javascript.ru/forum/showthread.php?p=175122#post175117 то и Вам бы отвечали на это примерно так, как по выше выложенной ссылке пост №9, а не так. как в этой теме. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 26 січня 2013 Автор Share Опубліковано: 26 січня 2013 kegel, если бы вопрос был от человека с кармой 100, то я бы тоже не пожалел 10 минут на подробные комментарии. А вообще, создание самодельных хуков и вызывать функцию это задачи немного разной сложности. В последнем случае сложность практически нулевая. Что Вам не понятно в фразе "вызвать функцию в callback"? Строку назвать? Или Google скрывает информацию о том, что такое callback в ajax запросе? Я вообще этот код по просьбе noVe выложил... Он понял - вот и отлично. Думаю не только он. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 в какой строке это понятно, а вот как вызвать функцию animateImageToCart() в callback ($('#button-cart').bind('click', function() { $.ajax({...не понятно. Если не трудно, хотелось бы узнать. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 26 січня 2013 Автор Share Опубліковано: 26 січня 2013 Вызов это animateImageToCart() . Это и есть вызов. т.е. название и две скобочки. Перед тем как что-то вызывать нужно что-то объявить. Объявление - см первый пост. Самое забавное в этом, то что я могу 100 раз повторить одно и тоже разными словами, но найдется какой-то вопрошающий, который не поймет или не прочтет. А ещё 10 останутся недовольны потому, что слишком сложно объяснил... :-D 1 Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 Дело в том что с главной страницы анимация не работает, зашел в товар, там все ок. Вот что в заблуждение ввело. Интересно почему с главной не работает? + вродь дошло, надо в каждом модуле телодвижения повторять значит. Хотя не факт, направьте в нужное русло. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Так там и не будет работать так просто... Чтобы работало с главной надо... Ну, например, перехватывать положение курсора и редактировать функцию addToCart() в common.js... Я это на коленке написать не могу. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 27 січня 2013 Share Опубліковано: 27 січня 2013 Просто onclick надо навешивать через JS, а не через HTML. Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно Надіслати Поділитися на інших сайтах More sharing options... 4 weeks later... foruss Опубліковано: 21 лютого 2013 Share Опубліковано: 21 лютого 2013 Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно не должно и не будет. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 24 лютого 2013 Share Опубліковано: 24 лютого 2013 не должно и не будет. А если быть точнее? Как тогда это реализовать? Надіслати Поділитися на інших сайтах More sharing options... alexeyll Опубліковано: 26 лютого 2013 Share Опубліковано: 26 лютого 2013 Как возможно замедлить скорость анимации картинки при ее движении в корзину? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 прикольно, спасибо :) Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ жаль только с этим не разобрался :( .... как все таки его навешивать?? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 6 березня 2013 Share Опубліковано: 6 березня 2013 для анимации в категориях сделал путем добавления id="product_id" к картинкам, ну и в самой функции анимации вместо #image надо эти id использовать.... красотень теперь... и кстати теперь в модулях таких как акции и пр. достаточно картинкам добавить id="product_id" :) Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Metrik Опубліковано: 23 січня 2013 Share Опубліковано: 23 січня 2013 а в каком файле прописуется данный код? Надіслати Поділитися на інших сайтах More sharing options...
zteprk Опубліковано: 24 січня 2013 Share Опубліковано: 24 січня 2013 а в каком файле прописуется данный код? Хотелось бы тоже чуточку подробней. в каком файле и после чего вставить данный код. спасибо! Надіслати Поділитися на інших сайтах More sharing options...
cmd Опубліковано: 24 січня 2013 Автор Share Опубліковано: 24 січня 2013 Ну, например, в product.tpl есть функция добавления товара в корзину. В callback вставить вызов animateImageToCart(). Только же не забудьте объявить animateImageToCart. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 cmd Вот если бы Вы ответили так, как ответили Вам в этой теме в посте №8 http://javascript.ru/forum/showthread.php?p=175122#post175117 то и Вам бы отвечали на это примерно так, как по выше выложенной ссылке пост №9, а не так. как в этой теме. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 26 січня 2013 Автор Share Опубліковано: 26 січня 2013 kegel, если бы вопрос был от человека с кармой 100, то я бы тоже не пожалел 10 минут на подробные комментарии. А вообще, создание самодельных хуков и вызывать функцию это задачи немного разной сложности. В последнем случае сложность практически нулевая. Что Вам не понятно в фразе "вызвать функцию в callback"? Строку назвать? Или Google скрывает информацию о том, что такое callback в ajax запросе? Я вообще этот код по просьбе noVe выложил... Он понял - вот и отлично. Думаю не только он. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 в какой строке это понятно, а вот как вызвать функцию animateImageToCart() в callback ($('#button-cart').bind('click', function() { $.ajax({...не понятно. Если не трудно, хотелось бы узнать. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 26 січня 2013 Автор Share Опубліковано: 26 січня 2013 Вызов это animateImageToCart() . Это и есть вызов. т.е. название и две скобочки. Перед тем как что-то вызывать нужно что-то объявить. Объявление - см первый пост. Самое забавное в этом, то что я могу 100 раз повторить одно и тоже разными словами, но найдется какой-то вопрошающий, который не поймет или не прочтет. А ещё 10 останутся недовольны потому, что слишком сложно объяснил... :-D 1 Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 Дело в том что с главной страницы анимация не работает, зашел в товар, там все ок. Вот что в заблуждение ввело. Интересно почему с главной не работает? + вродь дошло, надо в каждом модуле телодвижения повторять значит. Хотя не факт, направьте в нужное русло. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Так там и не будет работать так просто... Чтобы работало с главной надо... Ну, например, перехватывать положение курсора и редактировать функцию addToCart() в common.js... Я это на коленке написать не могу. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 27 січня 2013 Share Опубліковано: 27 січня 2013 Просто onclick надо навешивать через JS, а не через HTML. Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно Надіслати Поділитися на інших сайтах More sharing options... 4 weeks later... foruss Опубліковано: 21 лютого 2013 Share Опубліковано: 21 лютого 2013 Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно не должно и не будет. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 24 лютого 2013 Share Опубліковано: 24 лютого 2013 не должно и не будет. А если быть точнее? Как тогда это реализовать? Надіслати Поділитися на інших сайтах More sharing options... alexeyll Опубліковано: 26 лютого 2013 Share Опубліковано: 26 лютого 2013 Как возможно замедлить скорость анимации картинки при ее движении в корзину? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 прикольно, спасибо :) Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ жаль только с этим не разобрался :( .... как все таки его навешивать?? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 6 березня 2013 Share Опубліковано: 6 березня 2013 для анимации в категориях сделал путем добавления id="product_id" к картинкам, ну и в самой функции анимации вместо #image надо эти id использовать.... красотень теперь... и кстати теперь в модулях таких как акции и пр. достаточно картинкам добавить id="product_id" :) Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 cmd Вот если бы Вы ответили так, как ответили Вам в этой теме в посте №8 http://javascript.ru/forum/showthread.php?p=175122#post175117 то и Вам бы отвечали на это примерно так, как по выше выложенной ссылке пост №9, а не так. как в этой теме. Спасибо! Надіслати Поділитися на інших сайтах More sharing options...
cmd Опубліковано: 26 січня 2013 Автор Share Опубліковано: 26 січня 2013 kegel, если бы вопрос был от человека с кармой 100, то я бы тоже не пожалел 10 минут на подробные комментарии. А вообще, создание самодельных хуков и вызывать функцию это задачи немного разной сложности. В последнем случае сложность практически нулевая. Что Вам не понятно в фразе "вызвать функцию в callback"? Строку назвать? Или Google скрывает информацию о том, что такое callback в ajax запросе? Я вообще этот код по просьбе noVe выложил... Он понял - вот и отлично. Думаю не только он. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 в какой строке это понятно, а вот как вызвать функцию animateImageToCart() в callback ($('#button-cart').bind('click', function() { $.ajax({...не понятно. Если не трудно, хотелось бы узнать. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 26 січня 2013 Автор Share Опубліковано: 26 січня 2013 Вызов это animateImageToCart() . Это и есть вызов. т.е. название и две скобочки. Перед тем как что-то вызывать нужно что-то объявить. Объявление - см первый пост. Самое забавное в этом, то что я могу 100 раз повторить одно и тоже разными словами, но найдется какой-то вопрошающий, который не поймет или не прочтет. А ещё 10 останутся недовольны потому, что слишком сложно объяснил... :-D 1 Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 Дело в том что с главной страницы анимация не работает, зашел в товар, там все ок. Вот что в заблуждение ввело. Интересно почему с главной не работает? + вродь дошло, надо в каждом модуле телодвижения повторять значит. Хотя не факт, направьте в нужное русло. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Так там и не будет работать так просто... Чтобы работало с главной надо... Ну, например, перехватывать положение курсора и редактировать функцию addToCart() в common.js... Я это на коленке написать не могу. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 27 січня 2013 Share Опубліковано: 27 січня 2013 Просто onclick надо навешивать через JS, а не через HTML. Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно Надіслати Поділитися на інших сайтах More sharing options... 4 weeks later... foruss Опубліковано: 21 лютого 2013 Share Опубліковано: 21 лютого 2013 Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно не должно и не будет. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 24 лютого 2013 Share Опубліковано: 24 лютого 2013 не должно и не будет. А если быть точнее? Как тогда это реализовать? Надіслати Поділитися на інших сайтах More sharing options... alexeyll Опубліковано: 26 лютого 2013 Share Опубліковано: 26 лютого 2013 Как возможно замедлить скорость анимации картинки при ее движении в корзину? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 прикольно, спасибо :) Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ жаль только с этим не разобрался :( .... как все таки его навешивать?? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 6 березня 2013 Share Опубліковано: 6 березня 2013 для анимации в категориях сделал путем добавления id="product_id" к картинкам, ну и в самой функции анимации вместо #image надо эти id использовать.... красотень теперь... и кстати теперь в модулях таких как акции и пр. достаточно картинкам добавить id="product_id" :) Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 в какой строке это понятно, а вот как вызвать функцию animateImageToCart() в callback ($('#button-cart').bind('click', function() { $.ajax({...не понятно. Если не трудно, хотелось бы узнать. Надіслати Поділитися на інших сайтах More sharing options...
cmd Опубліковано: 26 січня 2013 Автор Share Опубліковано: 26 січня 2013 Вызов это animateImageToCart() . Это и есть вызов. т.е. название и две скобочки. Перед тем как что-то вызывать нужно что-то объявить. Объявление - см первый пост. Самое забавное в этом, то что я могу 100 раз повторить одно и тоже разными словами, но найдется какой-то вопрошающий, который не поймет или не прочтет. А ещё 10 останутся недовольны потому, что слишком сложно объяснил... :-D 1 Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 Дело в том что с главной страницы анимация не работает, зашел в товар, там все ок. Вот что в заблуждение ввело. Интересно почему с главной не работает? + вродь дошло, надо в каждом модуле телодвижения повторять значит. Хотя не факт, направьте в нужное русло. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Так там и не будет работать так просто... Чтобы работало с главной надо... Ну, например, перехватывать положение курсора и редактировать функцию addToCart() в common.js... Я это на коленке написать не могу. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 27 січня 2013 Share Опубліковано: 27 січня 2013 Просто onclick надо навешивать через JS, а не через HTML. Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно Надіслати Поділитися на інших сайтах More sharing options... 4 weeks later... foruss Опубліковано: 21 лютого 2013 Share Опубліковано: 21 лютого 2013 Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно не должно и не будет. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 24 лютого 2013 Share Опубліковано: 24 лютого 2013 не должно и не будет. А если быть точнее? Как тогда это реализовать? Надіслати Поділитися на інших сайтах More sharing options... alexeyll Опубліковано: 26 лютого 2013 Share Опубліковано: 26 лютого 2013 Как возможно замедлить скорость анимации картинки при ее движении в корзину? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 прикольно, спасибо :) Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ жаль только с этим не разобрался :( .... как все таки его навешивать?? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 6 березня 2013 Share Опубліковано: 6 березня 2013 для анимации в категориях сделал путем добавления id="product_id" к картинкам, ну и в самой функции анимации вместо #image надо эти id использовать.... красотень теперь... и кстати теперь в модулях таких как акции и пр. достаточно картинкам добавить id="product_id" :) Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
kegel Опубліковано: 26 січня 2013 Share Опубліковано: 26 січня 2013 Дело в том что с главной страницы анимация не работает, зашел в товар, там все ок. Вот что в заблуждение ввело. Интересно почему с главной не работает? + вродь дошло, надо в каждом модуле телодвижения повторять значит. Хотя не факт, направьте в нужное русло. Надіслати Поділитися на інших сайтах More sharing options...
cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Так там и не будет работать так просто... Чтобы работало с главной надо... Ну, например, перехватывать положение курсора и редактировать функцию addToCart() в common.js... Я это на коленке написать не могу. Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 27 січня 2013 Share Опубліковано: 27 січня 2013 Просто onclick надо навешивать через JS, а не через HTML. Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно Надіслати Поділитися на інших сайтах More sharing options... 4 weeks later... foruss Опубліковано: 21 лютого 2013 Share Опубліковано: 21 лютого 2013 Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно не должно и не будет. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 24 лютого 2013 Share Опубліковано: 24 лютого 2013 не должно и не будет. А если быть точнее? Как тогда это реализовать? Надіслати Поділитися на інших сайтах More sharing options... alexeyll Опубліковано: 26 лютого 2013 Share Опубліковано: 26 лютого 2013 Как возможно замедлить скорость анимации картинки при ее движении в корзину? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 прикольно, спасибо :) Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ жаль только с этим не разобрался :( .... как все таки его навешивать?? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 6 березня 2013 Share Опубліковано: 6 березня 2013 для анимации в категориях сделал путем добавления id="product_id" к картинкам, ну и в самой функции анимации вместо #image надо эти id использовать.... красотень теперь... и кстати теперь в модулях таких как акции и пр. достаточно картинкам добавить id="product_id" :) Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
cmd Опубліковано: 27 січня 2013 Автор Share Опубліковано: 27 січня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 27 січня 2013 Share Опубліковано: 27 січня 2013 Просто onclick надо навешивать через JS, а не через HTML. Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно Надіслати Поділитися на інших сайтах More sharing options... 4 weeks later... foruss Опубліковано: 21 лютого 2013 Share Опубліковано: 21 лютого 2013 Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно не должно и не будет. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 24 лютого 2013 Share Опубліковано: 24 лютого 2013 не должно и не будет. А если быть точнее? Как тогда это реализовать? Надіслати Поділитися на інших сайтах More sharing options... alexeyll Опубліковано: 26 лютого 2013 Share Опубліковано: 26 лютого 2013 Как возможно замедлить скорость анимации картинки при ее движении в корзину? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 прикольно, спасибо :) Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ жаль только с этим не разобрался :( .... как все таки его навешивать?? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 6 березня 2013 Share Опубліковано: 6 березня 2013 для анимации в категориях сделал путем добавления id="product_id" к картинкам, ну и в самой функции анимации вместо #image надо эти id использовать.... красотень теперь... и кстати теперь в модулях таких как акции и пр. достаточно картинкам добавить id="product_id" :) Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
kegel Опубліковано: 27 січня 2013 Share Опубліковано: 27 січня 2013 Просто onclick надо навешивать через JS, а не через HTML. Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно Надіслати Поділитися на інших сайтах More sharing options...
foruss Опубліковано: 21 лютого 2013 Share Опубліковано: 21 лютого 2013 Попробовал с модулем рекомендуемые, пока не получилось. Хотя ж должно не должно и не будет. Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 24 лютого 2013 Share Опубліковано: 24 лютого 2013 не должно и не будет. А если быть точнее? Как тогда это реализовать? Надіслати Поділитися на інших сайтах More sharing options... alexeyll Опубліковано: 26 лютого 2013 Share Опубліковано: 26 лютого 2013 Как возможно замедлить скорость анимации картинки при ее движении в корзину? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 прикольно, спасибо :) Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ жаль только с этим не разобрался :( .... как все таки его навешивать?? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 6 березня 2013 Share Опубліковано: 6 березня 2013 для анимации в категориях сделал путем добавления id="product_id" к картинкам, ну и в самой функции анимации вместо #image надо эти id использовать.... красотень теперь... и кстати теперь в модулях таких как акции и пр. достаточно картинкам добавить id="product_id" :) Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
kegel Опубліковано: 24 лютого 2013 Share Опубліковано: 24 лютого 2013 не должно и не будет. А если быть точнее? Как тогда это реализовать? Надіслати Поділитися на інших сайтах More sharing options...
alexeyll Опубліковано: 26 лютого 2013 Share Опубліковано: 26 лютого 2013 Как возможно замедлить скорость анимации картинки при ее движении в корзину? Надіслати Поділитися на інших сайтах More sharing options...
ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 прикольно, спасибо :) Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ жаль только с этим не разобрался :( .... как все таки его навешивать?? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 6 березня 2013 Share Опубліковано: 6 березня 2013 для анимации в категориях сделал путем добавления id="product_id" к картинкам, ну и в самой функции анимации вместо #image надо эти id использовать.... красотень теперь... и кстати теперь в модулях таких как акции и пр. достаточно картинкам добавить id="product_id" :) Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
ikarus Опубліковано: 1 березня 2013 Share Опубліковано: 1 березня 2013 Хотя не надо нифига перехватывать. Просто onclick надо навешивать через JS, а не через HTML. И не будет проблем. /*Тут передаем привет разработчикам OC */ жаль только с этим не разобрался :( .... как все таки его навешивать?? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 6 березня 2013 Share Опубліковано: 6 березня 2013 для анимации в категориях сделал путем добавления id="product_id" к картинкам, ну и в самой функции анимации вместо #image надо эти id использовать.... красотень теперь... и кстати теперь в модулях таких как акции и пр. достаточно картинкам добавить id="product_id" :) Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
ikarus Опубліковано: 6 березня 2013 Share Опубліковано: 6 березня 2013 для анимации в категориях сделал путем добавления id="product_id" к картинкам, ну и в самой функции анимации вместо #image надо эти id использовать.... красотень теперь... и кстати теперь в модулях таких как акции и пр. достаточно картинкам добавить id="product_id" :) Надіслати Поділитися на інших сайтах More sharing options... kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
kegel Опубліковано: 7 березня 2013 Share Опубліковано: 7 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? Надіслати Поділитися на інших сайтах More sharing options...
ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 ikarus Не могли бы показать на примере Рекомендуем-ых на главной? catalog/view/theme/тема/template/module/featured.tpl добавляем то что жирным: <div class="image"><a href="<?php echo $product['href']; ?>"><img [b]id="<?php echo $product['product_id']; ?>"[/b] src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" catalog/view/javascript/common.js скрипт addtocart меняем функцию анимации для работы с id изображения function animateImageToCart(pid) { imagePid = '#' + pid; imagePosition = $(imagePid).offset(); // получаем позицию изображения cartPosition = $('#cart').position(); // получаем позицию корзины cartPosition.left = cartPosition.left + ( $('#cart').width() / 2 ); cartPosition.top = cartPosition.top + ( $('#cart').height() / 2 ); // формальность $('body').prepend('<div id="imageToCart"><img src="'+ $(imagePid).attr('src') +'"></div>'); $('#imageToCart img').css({ 'position': 'absolute', 'display': 'inline-block', 'z-index': '1999', 'left': imagePosition.left + 'px', 'top': imagePosition.top + 'px', 'width': $(imagePid).width() + 'px', 'height': $(imagePid).height() + 'px' }); // поехала анимация в направлении корзины $('#imageToCart img').animate({ top: '0px', left: cartPosition.left + 'px', opacity: '0', width: $(imagePid).width() / 3, height: $(imagePid).height() / 3 }, 2000, function() { $('#imageToCart').remove(); }); } в конце скрипта, после блока success не забываем ставить запятую и добавляем: onSuccess: animateImageToCart(product_id) 1 Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
ikarus Опубліковано: 11 березня 2013 Share Опубліковано: 11 березня 2013 далее просто следует добавлять id к <img> по аналогии во все нужные модули и в категории, кстати если картинка летит мимо корзины (у меня например в зависимости от разрешения экрана летала мимо) можно заменить position() на offset(): cartPosition = $('#cart').position(); Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000
cmd Опубліковано: 11 березня 2013 Автор Share Опубліковано: 11 березня 2013 ikarus, может оно и правильно с точки зрения минимального вмешательства обращаться через onSuccess с указанием product_id, но с точки зрения возможности расширения функционала феншуйнее повесить $(селектор_кнопки_купить).bind('click', function() { var product_id = $(this).attr('product_id'); // сценарий добавления в корзину и всего прочего }); Это не панацея, а просто мое сугубо личное мнение. UPD: очевидное преимущество такого решения в том, что Вы будете обращаться к картинке через $(this). В Вашем решении может возникнуть ситуация, когда на одной странице будет 2 товара с одинаковым id, что приведет к ошибке JS-сценария. UPD2: Кстати, обратите внимание, что Вы указываете в качестве id число. Такое делать категорически нельзя. Надо как минимум делать id="product_id_<?php echo $product['product_id']; ?>" и селектор <img src="product_id_'+ $(imagePid).attr('src') +'"> или даже лучше лучше использовать атрибут data-id="<?php echo $product['product_id']; ?>" и слектор через атрибут <img src="'+ $('img[data-id="'+imagePid+']'"').attr('src') +'"> P.S. Может даже лучше не bind, a on на случай если где-то используется ajax-подгрузка товаров. P.P.S. Код написан на коленке - могут содержаться ошибки. Надіслати Поділитися на інших сайтах More sharing options... ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Анимация товара по направлению к корзине
ikarus Опубліковано: 12 березня 2013 Share Опубліковано: 12 березня 2013 cmd, Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ведь тогда это натуральный баг опенкарта, не? ведь тот же product_id в натуральном виде используется штатным сценарием добавления в корзину и всего прочего Надіслати Поділитися на інших сайтах More sharing options... cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
cmd Опубліковано: 12 березня 2013 Автор Share Опубліковано: 12 березня 2013 Я только хочу уточнить, как возможен вариант с наличием двух товаров с одинаковым id ? ikarus, Вы не поняли меня. Вы думаете про два товара с одинаковым product_id. А я Вам говорю, что на одной веб-странице может 2 раза повторяться один и тот же товар и если написать <div id="<?=$product_id?>"> то в итоге будет 2 блока div с одинаковым id. Теперь понятно? P.S. Это очень грубый пример. Числовой id делать нельзя в принципе. Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0
Recommended Posts