Jump to content

Search the Community

Showing results for tags 'jquery'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Основной
    • Новости и анонсы
    • Предложения и пожелания
    • Акции, подарки, конкурсы и награды
  • For developers
    • Общие вопросы
    • Нововведения на форуме
  • Opencart 3.x
    • Opencart 3.x: Общие вопросы
    • Opencart 3.x: Установка и обновление
    • Opencart 3.x: Локализация
    • Opencart 3.x: Настройка и оптимизация
    • Opencart 3.x: Песочница
    • Opencart 3.x: Поиск модулей
    • Opencart 3.x: Отчёты об ошибках
  • Opencart 2.x
    • Opencart 2.x: Общие вопросы
    • Opencart 2.x: Установка и обновление
    • Opencart 2.x: Локализация
    • Opencart 2.x: Настройка и оптимизация
    • Opencart 2.x: Песочница
    • Opencart 2.x: Поиск модулей
    • Opencart 2.x / ocStore 2.x: Отчёты об ошибках
  • Поддержка и ответы на вопросы
    • Общие вопросы
    • Установка, обновление, настройка
    • Шаблоны, дизайн и оформление магазина
    • Модули и дополнения
    • Помощь программистам и разработчикам
    • Мобильная витрина
    • Вопросы безопасности
    • SEO-вопросы (оптимизация и продвижение магазина)
    • Перевод
    • Отчёты об ошибках
    • Интернет-магазины и электронная коммерция
    • Песочница
  • Услуги
    • Создание магазинов под ключ
    • Дизайн, верстка и шаблоны
    • Программирование, создание модулей, изменение функциональности
    • Настройка и мелкая работа по уже существующему сайту
    • Обновление версии движка магазина
    • Наполнение магазина
    • Системное администрирование (настройка хостинга, серверов, ПО)
    • Другие услуги
    • Отзывы об исполнителях
    • Отзывы о заказчиках
  • Разное
    • Примеры сайтов на OpenCart (ocStore)
    • Курилка
    • Предложения по улучшению
    • Группы

Categories

  • Шаблоны
    • Бесплатные шаблоны
    • Платные шаблоны
  • Filters
  • Promotions & Pricing
  • Coupons & reward points, affiliate programs
  • Blogs, News & Articles
  • Shopping Cart & Order
  • Product Options
  • Product Attributes
  • Product Combinations
  • Search
  • SEO & Optimization
  • Caching & Server Performance
  • Платежные системы
  • Доставки
  • Editors
  • Design & Navigation
  • Banners, Slideshows & Galleries
  • Email Marketing & SMS Integration
  • Customer Support & Chat
  • Обмен данными
  • Учет в заказе
  • Compare & Wishlist
  • Социальные сети
  • Parsers
  • Модули
  • Tools & Developer Tools
  • Licenses
  • Языковые пакеты
  • Прочее
  • Отчеты
  • Сборки
  • Услуги

Categories

  • Настройка OpenCart
  • Служебные документы
  • Оплата

Blogs

  • Konorws (Разработка и модификация Opencart)
  • Блог mr.Kent)
  • AWS
  • Прожектор Бритни Спирс
  • Layk
  • Продвижение интернет-магазина, seo оптимизация
  • Записная книжка
  • Блог RGB
  • Записки от sitecreator
  • О программировании и другом
  • Модули которые сделают сайт лучше
  • Блог веб-студии NeoSeo
  • Useful IT
  • Задачи, идеи, решения.
  • Найденные решения проблем с Opencart
  • ocdroid blog
  • Заметки на полях...
  • Pimur
  • Серж Ткач
  • О жизни, смерти, о бизнесе и Опенкарте
  • Полезное с бесполезным
  • Просто мысли от laim731
  • Маркетинг и продвижение интернет-магазина
  • Магазин Tv-Project.com
  • Мой копирайтинг
  • Разработка под Opencart
  • SEO боксинг специального назначения
  • Подбери свои боксерские перчатки
  • Get-Web Dev

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


MSN


Сайт


ICQ


Jabber


Skype


Город:


Интересы

Found 38 results

  1. jQuery async load Скачать/Купить дополнение Модуль позволяет переместить javascript-скрипты из шапки в подвал сайта и подгружать их асинхронно, тем самым ускорить отрисовку страницы, увеличить баллы в Google Pagespeed и повысить ранжирование в поисковой выдаче. Важно: модуль распространяется по принципу – одна лицензия на один домен. С его помощью можно добиться 100/100 баллов в Google PageSpeed Insights. Но только если вы выполнили все рекомендации Google PageSpeed Insights, кроме пункта "Удалите код JavaScript и CSS, блокирующий отображение верхней части страницы". В противном случае результат может быть всего на пару процентов лучше. Демо: https://matuvi.com/oc2/async/ Внимание. На демо помимо самого модуля оптимизированы изображения и включен кэш (не входит в модуль). Протестировано на версиях OpenCart/ocStore 2.0.1.1, 2.1.0.2 и 2.3.0.2.3 на стандартных шаблонах со стандартным набором модулей. Автор модуля не гарантирует стабильную работу со сторонними плагинами и шаблонами. Теоретически модуль будет работать и на других версиях и сборках (пока кроме 3+). Если самостоятельно модуль установить не удалось: пишите в тему поддержки - поможем настроить. Добавил Dragon Добавлено 22.01.2018 Категория Кэширование, сжатие, ускорение Системные требования Сайт разработчика https://matuvi.com/ Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 2.3 2.2 2.1 2.0 ocStore 2.3 2.2 2.1 OpenCart.Pro, ocShop Не проверялось Обращение к серверу разработчика
  2. Привет! Стоит задача показывать корзину в шапке, если товар добавлен в нее или скрывать, если она пустая. Добавление класса к #cart после php-проверки не вариант, т.к. надо корзину показывать сразу после первого клика на кнопку Купить. Единственный правильный способ - дописать ajax, который добавляет товар в корзину, а именно в cart.tpl. Я пробовал добавить в common.js в функцию 'add': function(product_id, quantity) { после success: function(json) { команду $('#cart').addClass('block'); но она не срабатывает. Что я делаю не так?
  3. Написал маленький плагин для скрытия текста, может кому пригодится. Настройки data-length="100" - длина, включая пробелы и html теги | default: 100 data-text_show="Показать еще" - текст кнопки data-text_hide="Скрыть" - текст кнопки Использование <div class="Htext" data-length="250" data-text_show="Показать еще" data-text_hide="Скрыть"> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. </div> Сам плагин
  4. #1 Управляем классами элемента по hover'у $('body').on('mouseenter mouseleave', '[data-hover-class]', function(e) { var $this = $(this), $target = $this, rules = $this.attr('data-hover-class').split(' '), over = (e.type == 'mouseenter'); if ($this.attr('data-target')) { $target = $this.find($this.attr('data-target')); } rules.map(function(rule) { if (rule.charAt(0) == '+') { $target.toggleClass(rule.substring(1), over); } else if (rule.charAt(0) == '-') { $target.toggleClass(rule.substring(1), !over); } else if (/\>/.test(rule)) { $target.toggleClass(rule.slice(0, rule.indexOf('>')), !over); $target.toggleClass(rule.slice(rule.indexOf('>') + 1), over); } }); }); Атрибуты data-hover-class="foo>bar -baz +qwe" При наведении foo сменится на bar, удалится baz и добавится qwe При потере курсора (mouseleave) правила инвертируются: bar меняется на foo, добавляется baz и удаляется qwe data-target="[any-child-selector]" Можно указать над каким дочерним элементом производить смену классов. Атрибут необязательный. Использование <button type="button" class="btn btn-sm btn-link text-muted" data-hover-class="fa-heart>fa-times-circle -text-warning" data-target=">i" data-toggle="tooltip" data-placement="top" title="Удалить из закладок"> <i class="fas fa-fw fa-heart text-warning text-danger"></i> <span class="d-none d-sm-inline">В закладках</span> </button> При наведении на <button> у его вложенного <i> класс fa-heart сменится на fa-times-circle и удалится класс text-warning
  5. За месяц использования Bootstrap 4 накопилось немного фиксов и решений. Публикую как минимум для себя, в текстовиках уже надоело хранить. 1. Упрощенная реализация валидации форм на JQ $('body').on('submit', 'form.needs-validation', function(e) { if (this.checkValidity() === false) { e.preventDefault(); e.stopPropagation(); } $(this).addClass('was-validated'); }); 2. Инициализация Popover с возможностью указания контейнера границ и контента $('[data-toggle="popover"]').each(function(i) { var $element = $(this), options = $element.data(); if ($element.attr('data-content-element')) { options.html = true; options.content = function() { return $($(this).attr('data-content-element')).html(); }; } if ($element.attr('data-boundary-element')) { options.boundary = $($(this).attr('data-boundary-element')).get(0); } $element.popover(options); }); <a href="#" class="text-dark" data-toggle="popover" data-content-element="#popover-cart" data-boundary-element="#content">Корзина</a> <div id="#popover-cart"> ... </div> 3. Скрытие popover блока при клике вне его зоны с триггером click $('body').on('click', function(e) { $('[data-toggle="popover"], [aria-describedby^="popover"]').each(function() { if (!$(this).is(e.target) && $(this).has(e.target).length === 0 && $('.popover').has(e.target).length === 0) { $(this).popover('hide'); } }); }); 4. Делаем кнопку × в контенте popover'a для его скрытия $('body').on('click', '[data-dismiss="popover"]', function(e) { $('[aria-describedby="' + $(this).closest('.popover').attr('id') + '"]').popover('hide'); }); <button type="button" class="close text-dark" data-dismiss="popover"><i class="fas fa-times"></i></button> 5. Плавное изменение высоты (контента) при переключении слайдов карусели $('.carousel').on('slide.bs.carousel', function(e) { var nextH = $(e.relatedTarget).height(); $(this).find('.carousel-item.active').parent().animate({ height: nextH }, 250); }); 6. Делаем возможным выход контента за границы активного слайда карусели По умолчанию контент слайда имеет правило overflow: hidden и, например, если вы решите сделать увеличение элемента при hover с выходом за границы, то он обрежется. Чтобы это предотвратить оставим правило overflow: hidden только при смене слайдов. $(document).on({ // start 'slide.bs.carousel': function() { $(this).find('.carousel-inner').removeClass('o-visible'); }, // end 'slid.bs.carousel': function() { $(this).find('.carousel-inner').addClass('o-visible'); } }, '.carousel'); .o-visible { overflow: visible!important; } <div id="carousel-product-items" class="carousel slide" data-ride="carousel" data-interval="false" data-wrap="false"> <div class="carousel-inner o-visible" role="listbox"> ... </div> </div> 7. Возвращаем $.button из BS 3 в BS 4 Не понимаю кому мешал этот скромный, но полезный плагин Вызов будет доступен в таком виде $('button[type="submit"]').btnState('loading');
  6. В ocStore 1.5.5.1.2 (последней на данный момент) используется jQuery ветки 1.7.* Знаю, что была попытка выдать релиз данной версии с новой библиотекой jQuery. Но почему то отказались, какой то конфликт был. В недрах форума об этом уже писали. Для меня это пока загадка, т. к. еще два года назад я уже использовал версию 1.9 для front-end-а. Да, пришлось вместе с новой версией jQuery установить и другие библиотеки поновее, но в целом код js я не менял. Сейчас я хотел бы все новые проекты делать только на новых версиях jQuery. Т. к. в них учтены особенности новых браузеров и, самое главное, особенность планшетов и смартфонов, в том числе на windows 8 и windows phone. Я думаю, что специалисты знают, что событие touchstart (прикосновение к сенсорному экрану) важно правильно распознавать и обрабатывать. К сожалению, internet explorer даже 11-й версии не придерживается рекомендаций W3C, поэтому важно использование jQuery последних версий, если вы, конечно, желаете делать различия между событиями mouseover, click и touchstart. Большинство разработчиков, правда, вообще в своих темах/шаблонах и модулях для front-end-а не заморачиваются этим вопросом. Так почему же отказались в последней сборке ocStore от новой версии jQuery? С чем несовместимость? И почему это оказалась "неразрешимая" задача?
  7. Добрый день, друзья! Вот такое меня ждало сегодня с утра. Ничего не трогал много месяцев. Только товары новые выгружал. Может кто подсказать, что случилось?
  8. Приветствую!!! Пишу с мольбой о помощи. Делаю сайт на ocstore 2.3. Столкнулся с такой проблемой: отказались работать скрипты, которые вызывали формы обратной связи и появление кнопки меню для мобильных. Изначально они работали исправно, но после какого-то действия (не могу понять какого именно) перестали срабатывать. Возможно после установки расширения Buy One Click for OpenCart 2.3.x, возможно от другого расширения. Насколько я понимаю конфликт в различных версиях jquery, самостоятельно исправить в течении нескольких дней не смог. Версия jquery - 2.1.1 Выгрузил сделанное на сегодняшний день на хостинг http://мороженко.рф/ Не судите строго, это мой третий проект. Отозвавшемуся открою доступы. Помогите, пожалуйста, готов заплатить. Заранее спасибо. Скрипт отправки всплывающей формы: $(function() { // Купить в один клик $('.toclick, .callback, .kat_button').magnificPopup({ mainClass: 'mfp-zoom-in', removalDelay: 400 }); //E-mail Ajax Send $(".ajax-form").submit(function() { var th = $(this); $.ajax({ type: "POST", url: "catalog/view/theme/morozh/mail.php", data: th.serialize() }).done(function() { var pp_suc = th.closest('.product-popup').find('.success'); pp_suc.fadeIn(); setTimeout(function() { th.trigger("reset"); pp_suc.fadeOut(); $.magnificPopup.close(); }, 4000); }); return false; }); }); Скрипт проверки ввода номера телефона: <script type="text/javascript"> (function( $ ){ var $body; $(document).ready(function(){ $body = $('body'); $body .find('.my-form').each(function(){ $(this).mask("+7(999) 999-99-99",{autoclear: false}); }); $body.on('keyup','.my-form',function(){ var phone = $(this), phoneVal = phone.val(), form = $(this).parents('form'); if ( (phoneVal.indexOf("_") != -1) || phoneVal == '' ) { form.find('.btn-primary').attr('disabled',true); } else { form.find('.btn-primary').removeAttr('disabled'); } }); }); })( jQuery ); скрипт вызова кнопки меню для мобильников: <script type="text/javascript"> jQuery(document).ready(function($){ /* Подготавливаем иконку меню */ $('#nav-wrap').prepend('<div id="menu-icon">Меню</div>'); /* Переключаем навигацию */ $("#menu-icon").on("click", function(){ $("#nav").slideToggle(); $(this).toggleClass("active"); }); }); </script>
  9. Всех приветствую. Боюсь, что найти ответ на свой вопрос на форуме не осилю, да и не факт, что он есть, потому вынужден его задать. Пишу сюда, так как не в состоянии определить куда его поместить, так что если что, пусть опытные админы перенесут куда следует. Итак, Великие рыцари скрипта и кода, ежели кто знает эту жуткую тайну, просветите, будьте любезны, невежду по следующему вопросу: В сборке ОКСтор установлен плагин jail в пакете с jquery. Штука призвана подгружать картинки по мере разворачивания странички, плюс делает это с приятными эффектами. Собственно проблема в том, что перед тем, как появляется сама картинка товара (у меня фон везде белый) происходит кратковременное появление серого квадрата в качестве фона картинки, а потом он пропадает и уже пошел нужный эффект проявления картинки на странице. Так как у меня везде фон белый, этот серый квадрат просто выедает глаза. Одна часть проблемы была решена путем вычисления прошитого в скрипте эффекта принудительного наложения фона через размножение серой точки, точка была заменена на белую и длительность эффекта серого квадрата уменьшилась, то бишь сама проблема состояла из двух частей - первая, это та, которую я так и не решил, а после нее еще накладывается принудительный фон из файла и тоже серый, и только потом идет эффект проявления картинки. Так вот, заменив серую точку на белую я устранил вторую часть негативного эффекта, но первая осталась. Попытка поиграться с настройками плагина ни к чему не привела - меняется время засветки серого квадрата, и все что угодно, только не факт его появления. Стили здесь тоже однозначно не при чем, так как все что только можно было проверить было проверено. Углубляться дальше в джава-скрипт ради такой мелочи я попросту не могу - нет времени, а потому прошу помочь - кто знает что за чудо и где зарыто? На всякий случай даю ссылку на страничку, чтобы можно было визуально ощутить данный эффект, кто не понял со слов о чем речь: http://www.diatools.com.ua/index.php?route=product/category&path=18 ПС. Да, кстати, кэш браузера был многократно вычищен после каждой манипуляции и даже разок полностью вычищал кэш сайта (правда в ручную, может и не правильно), но как ни крутил, а похоже, что все-таки дело именно в скрипте, а моих знаний не хватает.
  10. Почему он это мне пишет ? что случилось и как исправить? jquery.colorbox-min.js:4 Uncaught TypeError: Cannot read property 'rel' of undefined просто в один прекрасный момент взял и перестал работать colorbox :(
  11. cmd

    jQuery 1.8

    Вышел релиз jQuery 1.8 http://blog.jquery.com/2012/08/09/jquery-1-8-released/
  12. Простой вариант реализация гетера Для начала упаковываем все нужные данные в переменную $data['data'] = .... Дальше берем div и делаем следующее <div id="var" class="hidden" data-var="<?= base64_encode(json_encode($data)); ?>"></div> Потом пишем "проксю" на jquery let data = JSON.parse(window.atob($("#var").data('var'))); let proxy = new Proxy({}, { get(target, name) { return typeof data[name] !== undefined ? data[name] : false; } }); Используем, к примеру у нас в наборе есть токен proxy.token
  13. Простая реализация подсказки внутри input-a Demo Название HTML <div class="inputer"> <label>Название</label> <input type="text" name=""> </div> CSS .inputer { border: 1px solid #ddd; position: relative; display: block; width: 100%; max-width: 350px; border-radius: 4px; overflow: hidden; } .inputer label { position: absolute; top: 40%; left: 5px; opacity: 0; transition: all .1s linear; visibility: hidden; font-size: 12px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none; } .inputer label, .inputer input::placeholder { color: #777; font-weight: bold; opacity: .8; } .inputer.active label { opacity: 1; top: 2px; visibility: visible; font-size: 11px; opacity: .8; } .inputer.active input { padding: 16px 5px 2px !important; } .inputer input, .inputer input:hover, .inputer input:focus, .inputer input:active { box-shadow: none; outline: none; border:none; border-radius: 0; display: block; width: 100%; padding: 9px 5px; font-size: 12px; } JS let inputerFn = (el) => { let $el = $(el); $el.parent().toggleClass('active', $el.val().length > 0); }; $('.inputer input').each(function (idx, el) { let $el = $(el); $el.attr('placeholder', $el.siblings('label').text()); inputerFn(el); }).on('input', function () { inputerFn(this); }); .inputer { border: 1px solid #ddd; position: relative; display: block; width: 100%; max-width: 350px; border-radius: 4px; overflow: hidden; } .inputer label { position: absolute; top: 40%; left: 5px; opacity: 0; transition: all .1s linear; visibility: hidden; font-size: 12px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none; } .inputer label, .inputer input::placeholder { color: #777; font-weight: bold; opacity: .8; } .inputer.active label { opacity: 1; top: 2px; visibility: visible; font-size: 11px; opacity: .8; } .inputer.active input { padding: 16px 5px 2px !important; } .inputer input, .inputer input:hover, .inputer input:focus, .inputer input:active { box-shadow: none; outline: none; border:none; border-radius: 0; display: block; width: 100%; padding: 9px 5px; font-size: 12px; }
  14. Как передать POST параметр через ajax в файл controller модуля OpenCart ? Есть модуль "latest" Файл контроллера latest.php, нужно передать туда параметр width через Ajax/Jquery Как обратится к этому файлу? Как работать с Ajax знаю, как параметры передать знаю, как принять знаю, но как обратится к нужному файлу в OpenCart? При попытках обращения по "url:' скрипт выдает ошибку "404 (not found)" Пробовал вот так: url: 'index.php?route=extension/module/latest', url: 'index.php?route=module/latest', url: '/catalog/controller/extension/module/latest', Если перейти на прямую по ссылки: "/catalog/controller/extension/module/latest.php" выдает ошибку HTTP ERROR 500
  15. Перенес рабочий сайт на тестовый сервер. Появилась проблема: Uncaught TypeError: $(...).button is not a function при попытке добавления товара в корзину. jQuery на месте, ничего не изменялось. SSL нет на обоих серверах. Единственное, что изменилось в адресе - это добавилось www. Может в этом быть проблема? Или из-за чего такая фигня может быть?
  16. Всем привет. Помогите пожалуйста разобраться с такой ситуацией. Я сделал выпадающее меню на jquery.hover. Работать оно работает, только если циклично наводить и убирать курсор, hover будет отрабатывать много раз и получается меню открывается - закрывается несколько раз. В GIF'ке видно. Вот код меню: $(document).ready(function(){ $('#menu-cat').hover(function(){ $('#category-box').slideDown('fast'); }, function(){ $('#category-box').slideUp('fast'); } ); Как от этого избавиться?
  17. Здравствуйте! Разрабатываем сайт на opencart 1.5.6 http://fastwax.isp1.erahost.ru/. Заказы на сайте создаются двумя способами - через каталог и через загрузку файлов на печать. Нужно сделать модуль (на основе страницы просмотр заказа) который позволит работать с заказами в админке в таком виде. ТЗ https://docs.google.com/document/d/17H1W1fzkroMERu_NniSRmy8GL2M1Q1AmFZbu2SjVVWc/edit?usp=sharing Пишите стоимость и сроки. Ваш опыт работы с opencart. Будет преимуществом наличие аккаунта на фриланс для оплаты через безопасную сделку.
  18. Здравствуйте, возникла такая задача, нужный JQuery скрипт у меня сделан на сайте http://jsfiddle.net/gxy45/11/, подскажите пожалуйста (ЖЕЛАТЕЛЬНО ПО ПОДРОБНЕЕ) в какие именно части сайта встраивать их? CSS я так понимаю в Stylesheet.css, только почему то эти стили не отображаются..а куда остальные вставлять с этим проблема (((
  19. Доброго времени суток, уважаемые форумчане! Работаю над реализацией следующей задачи: В админке в настройках модуля выбираются опции товаров, при нажатии на "Сохранить" отмеченные опции (реализовано в виде checkbox) фиксируются в БД. В каталоге, соответсвенно, отмеченные опции отображаются. Практически всё реализовано за исключением одной мелочи: в БД отмечаются не только выбранные checkbox, а все... Реализация в коде: <a onclick="setView(); $('#form').submit();" class="button"><?php echo $button_save; ?></a> public function setViewTest($option_id, $value) { $this->db->query("UPDATE ". DB_PREFIX ."product_option_view SET view = " .(int)$value." WHERE option_id = ".(int)$option_id); } <script type="text/javascript"> function setView() { if($("#<?php echo $option['option_id']?>").prop('checked')) { <?php $this->model_module_module_test->setViewTest($option['option_id'], 1); ?> } else { <?php $this->model_module_module_test->setViewTest($option['option_id'], 0); ?> } } </script> По логу SQL-запросов действительно делается update всех записей таблицы. Даже просто при загрузке страницы. Хотя на самом деле нужно, чтобы JS функция вызывалась только при клике на ссылку. Почему это происходит - для меня загадка. Буду очень признателен, если кто-то укажет на мои ошибки либо предложит другие пути решения данной задачи.
  20. Может кому надо (часто использую в личных целях): Часто бывает, что пользователю надо знать селектор для CSS или jQuery Особенно к примеру разработчикам тем, чтобы указать какой селектор в css изменять Привожу рабочий код инструмента, может кому надо (элегантный и простой): <script> $(function() { $("*").click(function() { var selector = $(this).parents() .map(function() { var id = $(this).attr("id"); var tagid = ''; if (id) { tagid += "#"+ id; } else { var classNames = $(this).attr("class"); if (classNames) { tagid += "." + $.trim(classNames).replace(/\s/gi, "."); } } tagid = this.tagName+tagid; return tagid; }) .get().reverse().join(" "); if (selector) { selector += " "+ $(this)[0].nodeName; } var id = $(this).attr("id"); if (id) { selector += "#"+ id; } var classNames = $(this).attr("class"); if (classNames) { selector += "." + $.trim(classNames).replace(/\s/gi, "."); } alert(selector); return false; }); }); </script> Пример: http://opencartadmin.com/freelancer/ Использование: берете любой HTML модуль: SEO CMS PRO, HTML блок, HTML+ Заполняете поле textarea модуля (или html виджет) И вешаете на те схемы где нужно определить селектор Потом заходите на страницу схемы и кликаете на любое место где нужно определить селектор, в alert окне будет нужный селектор (обычно используется три последних)
  21. Спешу поделиться классным способом работы со всплывающими окнами :-) Очевидно, что всплывающие окна (с увеличенными картинками и другой информацией) - это хорошо и гораздо лучше открытия в новом окне, особенно когда там не много информации, которую лучше показать посетителю сразу на той странице, где он находится. Многие из вас наверное заметили, что каждая статья в Opencart, помимо своего основного адреса, может быть открыта по такому адресу: /index.php?route=information/information/info&information_id=1 При этом открывается именно содержимое статьи, т.е. без шапки сайта, без футера и т.п., чистый html из статьи. Очень удобно открывать такие вещи через colorbox, допустим информацию про доставку, чтобы посетитель, зайдя на страничку товара, не открывал лишних вкладок, а просто клацал левой кнопкой по ссылке, ведущей на статью, которая появляется во всплывающем окошке. Но при этом у такого способа есть серьезный недостаток, как и вообще у самого colorbox - если посетитель клацает средней кнопкой (или правой - открыть новую вкладку), то вместо красивого всплывающего окошка появится голая новая вкладка с тем контентом, который должен был загружаться в colorbox (но который туда не попадает, ибо colorbox в таком случае вообще не инициируется). Попробуйте сами открыть так фотку товара у себя на странице товара. И если с картинками еще ситуация терпимая, то при открытии статьи по вышеуказанному способу, откроется голая страница, ничем не напоминающая сайт магазина, с одним лишь текстом статьи. Решается эта проблема через изящный костыль способ, хотя не валидно (не по спецификации html). Что нужно сделать для этого? В параметрах инициализации ссылок на colorbox дописать: href:function(){ return $(this).attr('to'); }, А в коде страницы в том месте, где идет ссылка на то, что мы хотим показать во всплывающем окне, сделать вот так (любители валидного html, не бросайте в меня помидорами): <a to="index.php?route=information/information/info&information_id=1" href="Статья_1" class="" title="">Текст ссылки</a> Что это все значит: как видите, у элемента a появился новый параметр to, которого нет в спецификации хтмл и который по сути будет адресом того содержимого, которое мы хотим открыть во всплывающем окне. При этом у ссылки все так же остается правильный адрес href, по которому пойдут поисковики и те пользователи, которые захотят открыть содержимое через среднюю кнопку или через контекстное меню, короче через создание новой вкладки. В результате хорошо и пользователям, и поисковикам - первые не теряются, попадая на страницы без шапки и футера сайта, а вторые индексируют именно то, что нам нужно. UPD: А чтобы проходить валидацию, можно использовать data-to вместо to
  22. Добрый день, прошу о точечной подсказке. Перевел сайт на хттпс: отредактировал файлы конфиг, сделал редирект, включил в настройках самого магазина. Сначала все было ок, позже вылезла проблема: часть изображение открываются по ссылкам HTTP, из-за этого пишет, что соединение не защищено. В консольке разработчиков везде одни и те же 8 фото - всякие спрайты для кнопок поиска и т.д. Если правильно понял, запрос на них дает вот этот скрипт: catalog/view/javascript/jquery/jquery-1.7.1.min.js Открывал его, добавил в двух местах к хттп букву "с", но без толку. Вопрос, как заставить это недоразумение запрашивать картинки по защищеному соединению ?
  23. Обнаружили на страницах сайта множество ссылок дублирующих друг друга, эти ссылки располагаются в разных блоках, виджетах и разделах сайта. Например в блоке с новостями: ссылка дублируется аж 3 раза: ссылка на статью, ссылка с изображения, ссылка на кнопке подробнее. Есть дублирующие ссылки в главном слайдере, дубли в миниатюрах каждого слайда, Дубли в кнопках вида «далее», «подробнее» - даже во внутренних ссылках нельзя использовать не точные анкоры, анкор должен соответствовать теме URL , поэтому такие кнопки лучше завернуть в JS. Категории товаров. Принято считать, что сквозные элементы сайта, в частности меню, поисковиками не учитываются, либо учитываются очень слабо, т.к. присутствуют на каждой странице. Тем не менее имеют место быть различные варианты. Возьмем для примера 4 крупных интернет-магазина: www.mvideo.ru, www.eldorado.ru и www.dns-shop.ru, www.tehnosila.ru. На сайте М.Видео абсолютно всё меню навигации с категориями и подкатегориями закрыто в тег noindex. Аналогичная картина на сайте Эльдорадо. Закрывать меню в noindex имеет смысл только чтобы не учитывать его текстовую составляющую, чтобы меню не попадало в сниппет на поисковой выдаче, чтобы не мешало определению релевантной страницы. Если запустит Краулер и посмотреть как он определить релевантные страницы, то можно увидеть что некоторые стр. определяются не верно. Так же есть повторяющиеся ссылки в Footer , микроразметке, и т.д, и прочих элементах... судя по отчету ScreaminFrog - google видит все внутренние ссылки, воспринимает, и распределяет вес с учетом всех внутренних факторов. Ссылки нужно закрыть, но по умолчанию такого решения в Opencart не предлагается, поэтому ищем альтернативные способы, изучаем правила закрытия ссылок: Внутренние ссылки не должны содержать атрибута rel=”nofollow”. В противном случае вес со страницы будет утекать, то есть будет попросту испаряться. Атрибут rel=”nofollow” необходимо использовать в редких случаях случаях, когда ссылка ведет на неиндексируемую страницу. Ссылки всегда должны вести на индексируемые страницы сайта, иначе будет повторяться история, описанная в пункте №1 выше. Даже при формировании внутренних ссылок при перелинковке следует использовать уникальные анкоры. Внутренние ссылки всегда должны быть прямыми и идти строго на целевые страницы. Это значит, что переход по ссылке должен отдавать ответ 200 OK. Я не говорю о том, что битые ссылки недопустимы, это очевидно, а я говорю о том, что ссылки должны идти без промежуточных 301-редиректов (а если там еще и не 301, а 302-редирект, то совсем беда). Не редко, когда меняют структуру, либо по вине верстальщика отследить на глаз многие мелочи трудно, и чтобы потом не удивляться - советую использовать краулер. (XENU или родной Screaming Frog) Нашел следующие методы закрытия внешних и внутренних ссылок на jQuery AJAX: (взяты со стороннего ресурса; там где проводили эксперимент пишут, что все способы рабочие) Вариант №1 — <a href="#" class="link" data-link="http://goo.gl">ссылка</a> Скрипт, который будет обрабатывать ссылку и открывать ее: <script>$('a.link').click(function(){window.open($(this).data("link"));return false;});</script> В этом варианте вам не надо будет производить никаких дополнительных доработок стилей в css, наша ссылка будет выглядеть как и все остальные «нормальные» ссылки. Вариант №2 — Код ссылки на странице: <a href="#" class="link" rel="http://goo.gl">ссылка</a> Скрипт, который будет обрабатывать ссылку и открывать ее: <script>$('a.link').click(function(){window.open($(this).attr("rel"));return false;});</script> Вариант №3 — Код ссылки на странице: <span class="hidden-link" data-link="http://goo.gl">ссылка</span> Скрипт, который будет обрабатывать ссылку и открывать ее: <script>$('.hidden-link').click(function(){window.open($(this).data('link'));return false;});</script> как пишет автор данный вариант100% не вызовет никаких подозрений у поисковика, так как даже структурно в коде нет ссылки, а просто кусок текста (он же анкор) выделен спаном <span>, что довольно часто используется при разметке документов. Однако и отображаться такая «ссылка» будет как обычный текст на странице. Придется пошаманить с css, чтобы имитировать ссылку. Например, добавить в свой css: span.hidden-link { color: #00ff00; /*-цвет ссылки-*/ text-decoration: underline; /*-подчеркивание-*/ cursor: pointer; /*-указатель в виде пальца-*/ } Вариант №4 — Еще один вариант скрытия ссылки <span class="hidden-link" data-link="http://goo.gl">ссылка</span> Скрипт, который будет обрабатывать ссылку и открывать ее: <script>$('.hidden-link').replaceWith(function(){return'<a href="'+$(this).data('link')+'">'+$(this).text()+'</a>';})</script> Отличие этого способа от предыдущего в том, что js-скрипт меняет на странице html-код «якобы» ссылки на нормальную ссылку после полной загрузки документа. Поэтому никаких правок в css вносить не придется, а ссылка будет открываться как и обычная. Способ так же прошел проверку экспериментом — ссылка не индексируется и не видится поисковыми роботами и, соответстенно, не учитывается. Вариант №5 — Универсальный вариант скрытия любого контента, например, картинок ..... Предыдущий вариант не работает в том случае, если в анкоре ссылки стоит картинка. А такие варианты довольно часто встречаются: счётчики, информеры, партнёрские баннеры. Поэтому предлагаю использовать вместо метода .text () метод .html (), он будет более универсальным. Код элемента, в данном случае ссылки, на странице, будет такой: <span class="hidden-link" data-link="http://goo.gl">внешняя ссылка</span> * — Чтобы закрыть картинку, в коде, указанном выше, необходимо заменить «внешняя ссылка» на код <img src="...">. Скрипт, который будет обрабатывать ссылку или любой другой элемент: <script>$('.hidden-link').replaceWith(function(){return'<a href="'+$(this).data('link')+'">'+$(this).html()+'</a>';})</script> Как вы понимаете, отличие данного способа от всех других в том, что в скрипт можно «спрятать» не только ссылку, но и картинку со ссылкой или еще что-нибудь. Все проверено — все работает 6. Вариант №6 — как пишут в коментариях самый лучший. $('.hidden-link').replaceWith (function (){return'<a href="'+$(this).data ('link')+'" title="'+$(this).text ()+'">'+$(this).html ()+'</a>';}) Интересно кто какие варианты использует и на что нужно обратить внимание еще.
  24. Здравствуйте! У меня такая проблема - западает выпадающее меню за баннер! Как мне это исправить? к меню прилагался jquery, куда именно(путь) мне закачать его? Это из за него такая фигня?(
  25. Есть сайт, snazzy-store.com на OpenCart v.1.5.5.1.2 необходимо сделать увеличение области изображения при наведении мышкой, пересмотрел весь форум, все способы уже устаревшие, модули уже не работают на этой версии. Кто делал это, напишите что вы использовали, может быть ссылки дадите, модуль какой... Смотрел в эту сторону, хотел вручную прикрутить http://www.mind-projects.it/projects/jqzoom/demos.php делал по инструкции http://www.mind-projects.it/projects/jqzoom/index.php#download_section ничего не вышло.... Выглядить должно примерно вот как тут: http://store.pe-art.ru/shipping/shipedit
×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.