Скрипт Кнопки "купить За 1 Клик"
#21
Отправлено 08 Август 2013 - 18:44
Теперь подскажите как сделать стиль окошка как тут http://www.video-reg...skaya-proshivka или как тут http://www.car-dvr.r...a_plus_new.html (второй вариант предпочтительней).
И ещё хотелось бы чтобы при отправки заказа выскакивало сообщение типа "Спасибо за заявку, мы перезвоним Вам в самое ближайшее время.", а то сейчас переходит на страницу /feedback, чего совсем не нужно.
#22
Отправлено 09 Август 2013 - 01:59
<input type="button" class="button_med" value="Заказать" onclick="$(this).closest('form').find('#feedback_name').val($(this).closest('form').find('#feedback_name').val() + ' ' + $(this).closest('form').find('.form_product_name').text());$(this).closest('form').hide();$(this).closest('form').before('<center>Подождите, идет отправка формы...</center>');$(this).closest('form').submit();"/>
и замените её на
<input type="button" class="button_med" value="Заказать" onclick="$(this).closest('form').find('#feedback_name').val($(this).closest('form').find('#feedback_name').val() + ' ' + $(this).closest('form').find('.form_product_name').text());$(this).closest('form').hide();$(this).closest('form').before('<center class="sends">Подождите, идет отправка формы...</center>');$.post($(this).closest('form').attr('action'), $(this).closest('form').serializeArray(), $.proxy(function() {$('.sends').remove();$(this).closest('form').before('<center class="sends">Спасибо за заявку, мы перезвоним Вам в самое ближайшее время.</center>');setTimeout(function() {$('.nyroModalClose').trigger('click');}, 3000)}, this));"/>
далее найдите
var content = $('.iframe_block_order').html(); $.fn.nyroModalManual({ width: width, height: height, content: content, minWidth: width, minHeight: height, gallery: null }); return(false);
и замените на
var content = $('.iframe_block_order').html(); $.fn.nyroModalManual({ width: width, height: height, content: content, minWidth: width, minHeight: height, gallery: null, wrap: { div: '<div class="wrapper block_order"></div>', ajax: '<div class="wrapper block_order"></div>', form: '<div class="wrapper block_order"></div>', formData: '<div class="wrapper block_order"></div>', manual: '<div class="wrapper block_order"></div>' } }); return(false);
после можно будет задавать стили окну через селектор .wrapper.block_order
#23
Отправлено 09 Август 2013 - 19:12
#24
Отправлено 09 Август 2013 - 23:36
<input type="button" class="button_med" value="Заказать" onclick="$(this).closest('form').find('#feedback_name').val($(this).closest('form').find('#feedback_name').val() + ' ' + $(this).closest('form').find('.form_product_name').text());$(this).closest('form').hide();$(this).closest('form').before('<center class="sends">Подождите, идет отправка формы...</center>');$.post($(this).closest('form').attr('action'), $(this).closest('form').serializeArray(), $.proxy(function() {$('.sends').remove();$(this).closest('form').before('<center class="sends">Спасибо за заявку, мы перезвоним Вам в самое ближайшее время.</center>');setTimeout(function() {$('.nyroModalClose').trigger('click');}, 3000)}, this));"/>заменить на:
<input type="button" class="button_med" value="Заказать" onclick="$(this).closest('form').find('#feedback_name').val($(this).closest('form').find('#feedback_name').val() + ' ' + $(this).closest('form').find('.form_product_name').text());$(this).closest('form').hide();$(this).closest('form').before('<center class='sends'>Подождите, идет отправка формы...</center>');$.post($(this).closest('form').attr('action'), $(this).closest('form').serializeArray(), $.proxy(function() {$('.sends').remove();$(this).closest('form').before('<center class='sends'>Спасибо за заявку, мы перезвоним Вам в самое ближайшее время.</center>');setTimeout(function() {$('.nyroModalClose').trigger('click');}, 3000)}, this));"/>
Проблема была в двойных кавычках.
#25
Отправлено 10 Август 2013 - 09:21
#26
Отправлено 11 Август 2013 - 16:45
#27
Отправлено 13 Август 2013 - 01:50
<input type="button" class="button_med" value="Заказать" onclick="$(this).closest('form').find('#feedback_name').val($(this).closest('form').find('#feedback_name').val() + ' ' + $(this).closest('form').find('.form_product_name').text());$(this).closest('form').hide();$(this).closest('form').before('<center class='sends'>Подождите, идет отправка формы...</center>');$.post($(this).closest('form').attr('action'), $(this).closest('form').serializeArray(), $.proxy(function() {$('.sends').remove();$(this).closest('form').before('<center class='sends'>Спасибо за заявку, мы перезвоним Вам в самое ближайшее время.</center>');setTimeout(function() {$('.nyroModalClose').trigger('click');}, 3000)}, this));"/>
на следующий код
<input type="button" class="button_med" value="Заказать" onclick="$(this).closest('form').find('#feedback_name').val($(this).closest('form').find('#feedback_name').val() + ' ' + $(this).closest('form').find('.form_product_name').text());$(this).closest('form').hide();$(this).closest('form').before('<center class=sends>Подождите, идет отправка формы...</center>');$.post($(this).closest('form').attr('action'), $(this).closest('form').serializeArray(), $.proxy(function() {$('.sends').remove();$(this).closest('form').before('<center class=sends>Спасибо за заявку, мы перезвоним Вам в самое ближайшее время.</center>');setTimeout(function() {$('.nyroModalClose').trigger('click');}, 3000)}, this));"/>
#28
Отправлено 13 Август 2013 - 19:59
Скажите какие стили и куда нужно добавить, чтобы было также как на этих сайтах?
http://www.video-reg...skaya-proshivka
http://www.car-dvr.r...delta_plus_new/ (хотелось бы реализовать этот вариант, если можно)
#29
Отправлено 15 Август 2013 - 02:53
<input id="feedback_name" style="width: 320px; margin: 10px;" name="form[feedback_name]" value="Имя" maxlength="50" minlength="3" class="input required" /> <input id="feedback_message" style="width: 320px; margin: 10px;" name="form[feedback_message]" class="required" value="Телефон" minlength="5" /> <input id="feedback_еmail" style="width: 320px; margin: 10px;" name="form[feedback_email]" value="Адрес email" maxlength="255" minlength="5" class="input" />
и замените их на
<input id="feedback_name" style="width: 320px; margin: 10px;" name="form[feedback_name]" value="Имя" maxlength="50" required="required" minlength="3" class="input required" /> <input id="feedback_message" style="width: 320px; margin: 10px;" name="form[feedback_message]" class="required" required="required" value="Телефон" minlength="5" /> <input id="feedback_еmail" style="width: 320px; margin: 10px;" name="form[feedback_email]" value="Адрес email" required="required" maxlength="255" minlength="5" type="email" class="input" />
Цитата
В данном случае вы хотите чтобы поверх формы отображалась информация товара? В виде изображения, названия и цены. Все остальные элементы остаются без изменений, верно?
#30
Отправлено 15 Август 2013 - 19:04
Цитата
Цитата
#31
Отправлено 16 Август 2013 - 02:45
Цитата
Поле email является обязательным для отправки сообщения.
Цитата
Замените код
<input type="button" class="button_med" value="Заказать" onclick="$(this).closest('form')
на следующий
<input type="button" class="button_med" value="Заказать" onclick="$('#nyroModalContent .feedbackForm').validate();if(!$('#nyroModalContent .feedbackForm').valid())return(false);$(this).closest('form')
далее найдите
<input id="feedback_name" style="width: 320px; margin: 10px;" name="form[feedback_name]" value="Имя" maxlength="50" required="required" minlength="3" class="input required" /> <input id="feedback_message" style="width: 320px; margin: 10px;" name="form[feedback_message]" class="required" required="required" value="Телефон" minlength="5" /> <input id="feedback_еmail" style="width: 320px; margin: 10px;" name="form[feedback_email]" value="Адрес email" required="required" maxlength="255" minlength="5" type="email" class="input" />
и замените на
<input id="feedback_name" style="width: 320px; margin: 10px;" name="form[feedback_name]" placeholder="Имя" maxlength="50" required="required" minlength="3" class="input required" /> <input id="feedback_message" style="width: 320px; margin: 10px;" name="form[feedback_message]" class="required" required="required" placeholder="Телефон" minlength="5" /> <input id="feedback_еmail" style="width: 320px; margin: 10px;" name="form[feedback_email]" placeholder="Адрес email" required="required" maxlength="255" minlength="5" type="email" class="input required email" />
Цитата
Добавьте в ваш файл стилей main.css
#nyroModalWrapper .block_order #closeBut { display: none; } #nyroModalWrapper { border: 4px double #777777 !important; } #nyroModalWrapper .block_order .feedbackForm { padding: 0 40px; } #nyroModalWrapper .block_order h3 { color: #000000; font-size: 17px; line-height: 33px; margin: 0 0 15px; text-align: left; } #nyroModalWrapper .block_order .prd-table table, #nyroModalWrapper .block_order .prd-table td, #nyroModalWrapper .block_order .prd-table tr { border: 1px solid #CCCCCC; margin: 0; padding: 10px; text-align: center; vertical-align: middle; } #nyroModalWrapper .block_order .prd-block > tr:not(.prd-table) td { padding: 0; margin: 0; } #nyroModalWrapper .block_order .button_med { background: #FFDB00; height: 30px; width: 300px; }
далее в шаблоне найдите
<div class="iframe_click"> <input type="hidden" name="hash" value="{HASH}" /> {% IF FORM_SEND_OK %} <h3 class="green">Спасибо за Ваше сообщение! В скором времени мы свяжемся с Вами.</h3> <a href="http://{NET_DOMAIN}/">Перейти на главную</a> {% ELSE %} <input id="feedback_name" style="width: 320px; margin: 10px;" name="form[feedback_name]" placeholder="Имя" maxlength="50" required="required" minlength="3" class="input required" /> <input id="feedback_message" style="width: 320px; margin: 10px;" name="form[feedback_message]" class="required" required="required" placeholder="Телефон" minlength="5" /> <input id="feedback_еmail" style="width: 320px; margin: 10px;" name="form[feedback_email]" placeholder="Адрес email" required="required" maxlength="255" minlength="5" type="email" class="input required email" />
и замените на
<div class="section-caption c-orange"><h3>Быстрая покупка без регистрации!</h3></div> <div class="iframe_click"> <input type="hidden" name="hash" value="{HASH}" /> {% IF FORM_SEND_OK %} <h3 class="green">Спасибо за Ваше сообщение! В скором времени мы свяжемся с Вами.</h3> <a href="http://{NET_DOMAIN}/">Перейти на главную</a> {% ELSE %} <table class="prd-block"> <tr class="prd-table"> <td colspan="2"> <table> <tr> <td class="form_product_img"></td> <td class="form_product_name"></td> <td class="form_product_price"></td> </tr> </table> </td> </tr> <tr> <td>Ваше имя*:</td> <td><input id="feedback_name" style="width: 150px; margin: 10px;" name="form[feedback_name]" placeholder="Имя" maxlength="50" required="required" minlength="3" class="input required" /></td> </tr> <tr> <td>Ваш телефон*:</td> <td><input id="feedback_message" style="width: 150px; margin: 10px;" name="form[feedback_message]" class="required" required="required" placeholder="Телефон" minlength="5" /></td> </tr> <tr> <td>Ваш email*:</td> <td><input id="feedback_еmail" style="width: 150px; margin: 10px;" name="form[feedback_email]" placeholder="Адрес email" required="required" maxlength="255" minlength="5" type="email" class="input required email" /></td> </tr> </table>
далее найдите
$('.form_product_name').text('{GOODS_NAME}');
и замените на
$('.form_product_name').text('{GOODS_NAME}'); $('.form_product_img').html($('.goodsDataMainImagesIcon:eq(0)')); $('.form_product_price').html($('.goodsDataMainModificationPriceNow'));
#32
Отправлено 17 Август 2013 - 16:28
#33
Отправлено 20 Август 2013 - 05:21
$('.form_product_price').html($('.goodsDataMainModificationPriceNow'));
на
$('.form_product_price').html($('.goodsDataMainModificationDataBlock .goodsDataMainModificationPriceNow:first'));
#34
Отправлено 20 Август 2013 - 09:31
Также, окошко можно сделать чуть больше и чтобы оно разворачивалось в полную как в примере, а не как сейчас с прокручиванием. Как я понимаю, для этого надо ужать информацию показываемую в окошке.
Сделать следующее: убрать двойное обрамление показываемого товара, подтянуть друг к другу имя, телефон и емэйл, уменьшить огромную цену товара и дать больше пространства для названия товара. Убрать сверху название товара, т.к. оно уже есть в ячейке товара.
В общем, всё как в примере http://www.car-dvr.r...delta_plus_new/
#35
Отправлено 21 Август 2013 - 03:01
$('.form_product_price').html($('.goodsDataMainModificationDataBlock .goodsDataMainModificationPriceNow:first'));
на
$('.form_product_price').html($('.goodsDataMainModificationDataBlock .goodsDataMainModificationPriceNow:first').clone());
Для измеения размера окна - найдите
var content = $('.iframe_block_order').html(); $.fn.nyroModalManual({ width: width, height: height, content: content, minWidth: width, minHeight: height, gallery: null, wrap: { div: '<div class="wrapper block_order"></div>', ajax: '<div class="wrapper block_order"></div>', form: '<div class="wrapper block_order"></div>', formData: '<div class="wrapper block_order"></div>', manual: '<div class="wrapper block_order"></div>' } }); return(false);
и задайте необходимый размер в соответствующих опциях width(имя опции): width(значение опции), Например
var content = $('.iframe_block_order').html(); $.fn.nyroModalManual({ width: '600px', height: height, content: content, minWidth: '400px', minHeight: height, gallery: null, wrap: { div: '<div class="wrapper block_order"></div>', ajax: '<div class="wrapper block_order"></div>', form: '<div class="wrapper block_order"></div>', formData: '<div class="wrapper block_order"></div>', manual: '<div class="wrapper block_order"></div>' } }); return(false);
далее стиль
#nyroModalWrapper .block_order .prd-table table, #nyroModalWrapper .block_order .prd-table td, #nyroModalWrapper .block_order .prd-table tr { border: 1px solid #CCCCCC; margin: 0; padding: 10px; text-align: center; vertical-align: middle; }
замените на
#nyroModalWrapper .block_order .prd-table table, #nyroModalWrapper .block_order .prd-table table td, #nyroModalWrapper .block_order .prd-table tr { border: 1px solid #CCCCCC; margin: 0; padding: 10px; text-align: center; vertical-align: middle; }
далее найдите и удалите в шаблоне
<div class="section-caption c-orange"><strong>Быстрый заказ<br /><span class="form_product_name"></span></strong></div>
далее в файл стилей добавьте
#nyroModalWrapper .block_order .prd-block > tbody > tr:not(.prd-table) td { padding: 0; } #nyroModalWrapper .form_product_price .goodsDataMainModificationPriceNow { font-size: 12px; }
#36
Отправлено 21 Август 2013 - 19:57
Когда нажимаешь на кнопку "купить в 1 клик" то теперь исчезает первая мини-картинка под главным изображением.
Когда меняю ширину и высоту, то окошко увеличивается на определенный размер и больше не регулируется, т.е. если поменять ширину, то размер не меняется. Какую ширину или высоту не поставил бы окошко свои размеры не меняет. Так же оно теперь сместилось в правый нижний угол.
Так же надо подтянуть друг к другу имя, телефон и емэйл, как в примере.
Спасибо.
#37
Отправлено 22 Август 2013 - 02:29
$('.form_product_img').html($('.goodsDataMainImagesIcon:eq(0)'));
и замените её на
$('.form_product_img').html($('.goodsDataMainImagesIcon:eq(0)').clone());
Цитата
Попробуйте вместо передачи строки вида '500px' устанавливать целое значение вида 500
Далее в файл стилей main.css добавьте
.prd-table input { margin: 2px 10px !important; }
#38
Отправлено 22 Август 2013 - 15:38
В Firefox подогнал размер окна, смотрится нормально, но в хроме и опере справа всё равно стоит прокрутка по вертикали, хотя там прокручивать то и нечего. Как её убрать?
Так же надо подтянуть друг к другу имя, телефон и емэйл, как в примере - 3й раз пишу, не хотите подтягивать чтоли?)
#39
Отправлено 23 Август 2013 - 02:50
Цитата
Немного ошиблась с селектором. Замените
.prd-table input { margin: 2px 10px !important; }
на
.prd-block input { margin: 4px 10px !important; }
Цитата
Добавьте в файл стилей
.block_order div#nyroModalContent { overflow: visible !important; }
#40
Отправлено 23 Август 2013 - 19:30
$('.form_product_img').html($('.goodsDataMainImagesIcon:eq(0)').clone());картинка исчезать перестала, но теперь она стала наоборот добавляться и дублировать главное изображение при увеличении. Теперь их два при увеличении.
Так же хотелось бы всё же как-то убрать отправку емэйла, т.к. это как раз только тормозит покупателя оформить заказ.
Раз вы говорите, что он по-любому должен отправляться, то может можно как-то сделать так, чтобы емэйл (любой случайный, допустим мой) отправлялся автоматом сам при нажатии кнопки, т.е. создать некое правило в коде на автоматическую отправку емэйла и прописать его там. Мой емэйл будет всегда отправляться при нажатии на кнопку заказать, при этом само поле "Ваш email" будет отсутствовать во всплывающем окне.
Можно так реализовать?
Ну или как-то по другому, но эта строка с мылом ой как не желательна.
Спасибо.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных