Ингредиенты и рецепты - нужен скрипт
|
|
|
2015-10-20Дата: Вторник, 20.10.2015, 14:39 | Сообщение # 211 |
Подполковник
Группа: Пользователи
Статус: Offline
|
| | |
|
|
2015-12-17Дата: Четверг, 17.12.2015, 11:46 | Сообщение # 212 |
Подполковник
Группа: Пользователи
Статус: Offline
|
Добрый день. У меня на сайте есть калькулятор карбонизации пива Хотелось бы его немного усовершенствовать:
1) Что бы по умолчанию выбирались Цельсии, а не фаренгейты. 2) Калькулятор рассчитывает давление в PSI, а надо бы пересчитывать еще и в BAR 1 PSI = 0,07 BAR
Возможно ли такое? То моих знаний в скриптах пока не хватает.
| | |
|
|
2015-12-18Дата: Пятница, 18.12.2015, 01:34 | Сообщение # 213 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
Iliz, Добрый) Да, наверняка. Позже посмотрю, отпишусь.
| | |
|
|
2015-12-18Дата: Пятница, 18.12.2015, 11:59 | Сообщение # 214 |
Подполковник
Группа: Пользователи
Статус: Offline
|
Не смотрели еще калькулятор? Есть еще пару идей, которые надо реализовать в главном скрипте.
Сообщение отредактировал Iliz - Пятница, 18.12.2015, 12:00 | | |
|
|
2015-12-19Дата: Суббота, 19.12.2015, 01:52 | Сообщение # 215 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
Iliz, Не смотрели еще калькулятор? Да вот, только только.. Заменить таблицу на эту:
Код <table cellspacing="2" cellpadding="2" style="tableLayout: auto; background: #FFE9A8;" class="calc"> <tbody> <tr> <td style="text-align: center; background: #FFBF00;" colspan="2" class="separator">Калькулятор силы карбонизации:</td> </tr> <tr> <td style="vertical-align: top; padding-top: 6px;">Единицы:</td> <td><label><input type="radio" value="us" onchange="document.calc.txttemp.value=36; updateAll();" name="rd_units"> Фаренгейт </label><br> <label><input type="radio" value="metric" onchange="document.calc.txttemp.value=2; updateAll();" name="rd_units" checked="checked"> Цельсий </label></td> </tr> <tr> <td>Объем CO2:</td> <td><input type="text" value="2.0" style="width: 100px" onchange="javascript: updateAll();" name="txtvolumes" maxlength="5"></td> </tr> <tr> <td>Температура в кеге:</td> <td><input type="text" value="2" style="width: 100px" onchange="javascript: updateAll();" name="txttemp" maxlength="5"> (F / C)</td> </tr> <tr> <td> </td> <td><input type="button" value="Обновить" onclick="javascript: updateAll();" name="update"><br> </td> </tr> <tr style="height: 30px;"> <td>Необходимое давление:</td> <td> <strong style="font-size: 150%;" id="divPSI" class="calcinfogreen">5.0 psi</strong> || <strong id="divBAR" class="calcinfogreen" style="font-size: 150%;">0.4 bar</strong></td> </tr> </tbody> </table> Скрипт перенести ниже таблицы, как в примере. Скрипт в личке.
Есть еще пару идей, которые надо реализовать в главном скрипте. Слушаю.
ps
Код <form onsubmit="return false;" name="calc"> <table cellspacing="2" cellpadding="2" style="tableLayout: auto; background: #FFE9A8;" class="calc"> <tbody> <tr> <td style="text-align: center; background: #FFBF00;" colspan="2" class="separator">Калькулятор силы карбонизации:</td> </tr> <tr> <td style="vertical-align: top; padding-top: 6px;">Единицы:</td> <td><label> Цельсий </label></td> </tr> <tr> <td>Объем CO2:</td> <td><input type="text" value="2.0" style="width: 100px" onchange="javascript: updateAll();" name="txtvolumes" maxlength="5"></td> </tr> <tr> <td>Температура в кеге:</td> <td><input type="text" value="2" style="width: 100px" onchange="javascript: updateAll();" name="txttemp" maxlength="5"> (C)</td> </tr> <tr> <td> </td> <td><input type="button" value="Обновить" onclick="javascript: updateAll();" name="update"><br> </td> </tr> <tr style="height: 30px;"> <td>Необходимое давление:</td> <td> <strong style="font-size: 150%;" id="divPSI" class="calcinfogreen">4.97 psi</strong> || <strong id="divBAR" class="calcinfogreen" style="font-size: 150%;">0.35 bar</strong></td> </tr> </tbody> </table> </form>
| | |
|
|
2015-12-21Дата: Понедельник, 21.12.2015, 12:01 | Сообщение # 216 |
Подполковник
Группа: Пользователи
Статус: Offline
|
Отлично. На примере этого калькулятора можешь мне объяснить, что нужно изменить в коде, что бы по умолчанию выбраны были метрические единицы измерения и только. Как это в прошлом калькуляторе мы сделали. Мне бы понять как это делается, что бы в следующих калькуляторах я сам мог это уже исправлять.
| | |
|
|
2015-12-21Дата: Понедельник, 21.12.2015, 12:05 | Сообщение # 217 |
Подполковник
Группа: Пользователи
Статус: Offline
|
Цитата Iliz, Пт, 18.12.2015, 11:59:39 Есть еще пару идей, которые надо реализовать в главном скрипте. Слушаю. Чуть позже. Надо сначала с калькуляторами разобраться.
| | |
|
|
2015-12-21Дата: Понедельник, 21.12.2015, 12:37 | Сообщение # 218 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
На примере этого калькулятора можешь мне объяснить ..Как вы себе это представляете?
Для начала, закоментировать лишние строки и чекбоксы в html форме. В скрипте найти зависимости от закоментированных элементов. Отредактировать скрипт, заменив зависимости на статичные данные.
Хорошо
| | |
|
|
2015-12-21Дата: Понедельник, 21.12.2015, 15:05 | Сообщение # 219 |
Подполковник
Группа: Пользователи
Статус: Offline
|
. Как вы себе это представляете? Покажи код, который надо заменить и на что его заменить (код). А дальше по аналогии я сам буду пробовать в других калькуляторах. Если не получится обращусь к тебе. По другому я не додумаюсь) там еще 10 калькуляторов с таким же выбором единиц измерений, которые ненужны
Сообщение отредактировал Iliz - Понедельник, 21.12.2015, 15:09 | | |
|
|
2015-12-21Дата: Понедельник, 21.12.2015, 16:41 | Сообщение # 220 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
Iliz, Покажи код, который надо заменить и на что его заменить (код) На предыдущем примере: Заменить это:
Код <tr> <td style="vertical-align: top; padding-top: 6px;">Единицы:</td> <td><label><input type="radio" value="us" onchange="document.calc.txttemp.value=36; updateAll();" name="rd_units"> Фаренгейт </label><br> <label><input type="radio" value="metric" onchange="document.calc.txttemp.value=2; updateAll();" name="rd_units" checked="checked"> Цельсий </label></td> </tr> На это:
Код <tr> <td style="vertical-align: top; padding-top: 6px;">Единицы:</td> <td> <label> Цельсий </label></td> </tr>
Заменить это:
Код <td><input type="text" value="2" style="width: 100px" onchange="javascript: updateAll();" name="txttemp" maxlength="5"> (F / C)</td>
На это:
Код <td><input type="text" value="2" style="width: 100px" onchange="javascript: updateAll();" name="txttemp" maxlength="5"> (C)</td>
И это:
Код <tr style="height: 30px;"> <td>Необходимое давление:</td> <td> <div style="font-size: 150%;" id="divPSI" class="calcinfogreen">5.0 psi</div></td> </tr>
На это:
Код <tr style="height: 30px;"> <td>Необходимое давление:</td> <td> <strong style="font-size: 150%;" id="divPSI" class="calcinfogreen">4.97 psi</strong> || <strong id="divBAR" class="calcinfogreen" style="font-size: 150%;">0.35 bar</strong></td> </tr> Добавляем переменную:
Код var volumes, temp, units, divPSI;
На:
Код var volumes, temp, units, divPSI, divBAR;
Определяем ее:
Код divPSI = document.getElementById('divPSI');
Добавить ниже:
Код divBAR = document.getElementById('divBAR');
Прописываем единицу измерений:
Код units = getSelectedRadioValue(document.calc.rd_units);
На:
Добавляем переменную:
Код pressure = rounddecimal(pressure, 1);
Заменить на:
Код pressure = rounddecimal(pressure, 2); pressure2 = rounddecimal((0.07*pressure), 2);
Выводим:
Код divPSI.innerHTML = pressure + " psi";
Заменить на:
Код divPSI.innerHTML = pressure + ' psi'; divBAR.innerHTML = pressure2 + ' bar';
Подчищаем лишнее: Удалить:
Код function getSelectedRadioValue(r) { for (i = 0; i < r.length; i++) { if (r[i].checked) { return r[i].value; break } } } ,
Код if (units == "us" && temp <= 32) { alert('Температуры должны быть выше чем 32.'); return false } ,
Код if (units == "us" && temp >= 150) { alert('Температуры должны быть ниже чем 150.'); return false } ---
По другому я не додумаюсь Ну думаю, что это сильно тебе поможет .. все скрипты разные..
| | |
|
|
2015-12-21Дата: Понедельник, 21.12.2015, 17:11 | Сообщение # 221 |
Подполковник
Группа: Пользователи
Статус: Offline
|
На предыдущем примере: Заменить это: Код <tr> <td style="vertical-align: top; padding-top: 6px;">Единицы:</td> <td><label><input type="radio" value="us" onchange="document.calc.txttemp.value=36; updateAll();" name="rd_units"> Фаренгейт </label><br> <label><input type="radio" value="metric" onchange="document.calc.txttemp.value=2; updateAll();" name="rd_units" checked="checked"> Цельсий </label></td> </tr> На это: Код <tr> <td style="vertical-align: top; padding-top: 6px;">Единицы:</td> <td> <label> Цельсий </label></td> </tr>
Заменить это: Код <td><input type="text" value="2" style="width: 100px" onchange="javascript: updateAll();" name="txttemp" maxlength="5"> (F / C)</td>
На это: Код <td><input type="text" value="2" style="width: 100px" onchange="javascript: updateAll();" name="txttemp" maxlength="5"> ©</td>
И это: Код <tr style="height: 30px;"> <td>Необходимое давление:</td> <td> <div style="font-size: 150%;" id="divPSI" class="calcinfogreen">5.0 psi</div></td> </tr>
На это: Код <tr style="height: 30px;"> <td>Необходимое давление:</td> <td> <strong style="font-size: 150%;" id="divPSI" class="calcinfogreen">4.97 psi</strong> || <strong id="divBAR" class="calcinfogreen" style="font-size: 150%;">0.35 bar</strong></td> </tr>
Ну если с этим более и менее все понятно. А то, что ниже вообще не пойму откуда взято. Я эти коды не в скрипте, не на странице калькулятора не вижу.Добавляем переменную: Код var volumes, temp, units, divPSI; На: Код var volumes, temp, units, divPSI, divBAR;
Определяем ее: Код divPSI = document.getElementById('divPSI');
Добавить ниже: Код divBAR = document.getElementById('divBAR');
Прописываем единицу измерений: Код units = getSelectedRadioValue(document.calc.rd_units);
На: Код units = 'metric';
Добавляем переменную: Код pressure = rounddecimal(pressure, 1);
Заменить на: Код pressure = rounddecimal(pressure, 2); pressure2 = rounddecimal((0.07*pressure), 2);
Выводим: Код divPSI.innerHTML = pressure + " psi";
Заменить на: Код divPSI.innerHTML = pressure + ' psi'; divBAR.innerHTML = pressure2 + ' bar';
Подчищаем лишнее: Удалить: Код function getSelectedRadioValue® { for (i = 0; i < r.length; i++) { if (r[i].checked) { return r[i].value; break } } }
, Код if (units == "us" && temp <= 32) { alert('Температуры должны быть выше чем 32.'); return false }
, Код if (units == "us" && temp >= 150) { alert('Температуры должны быть ниже чем 150.'); return false }
Сообщение отредактировал Iliz - Понедельник, 21.12.2015, 17:12 | | |
|
|
2015-12-21Дата: Понедельник, 21.12.2015, 18:19 | Сообщение # 222 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
А то, что ниже вообще не пойму откуда взято. Это взято из предыдущего скрипта, что стоял у вас на странице, из того, который правил. Распакованный, естественно.
..И да .. этим заниматься нужно не на сайте, а на отдельной локальной странице, лучше всего, на локальном сервере.. в редакторе с подсветкой JS синтаксиса и контролем ошибок. Так же неплохо уметь пользоваться консолью и отладчиком..
| | |
|
|
2015-12-22Дата: Вторник, 22.12.2015, 09:46 | Сообщение # 223 |
Подполковник
Группа: Пользователи
Статус: Offline
|
За распаковку огромный респект. Честно я даже не понимал, что за скрипт такой не понятный. Теперь я могу многое править сам. А как потом это все запаковать обратно, не разберусь?
| | |
|
|
2015-12-22Дата: Вторник, 22.12.2015, 11:50 | Сообщение # 224 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
Iliz, А как потом это все запаковать обратно, не разберусь? packer
| | |
|
|
2015-12-23Дата: Среда, 23.12.2015, 14:56 | Сообщение # 225 |
Подполковник
Группа: Пользователи
Статус: Offline
|
Спасибо за наводку. Получилось самому все устранить!
| | |
|