Люди добрые и умные, помогите разобраться с калькулятором.
На каком-то сайте нашел калькулятор натяжных потолков, ну понравился он мне... Не могу понять откуда подставляются значения для расчета?
На локалке(компьютере) в скрипте меняю значения на свои
var prods = {
pongs: 540,
polyplast: 480,
msd: 100,
descor: 770,
clipso: 1580,
cerutti: 1630,
photo: 1890
};
, все работает. Вставляю к себе на сайт, данные подставляются с сайта исходника.
Содержимое scriptcalc.js
//передача данных калькулятора форме
function generateOutCalc(){
// Площадь, м2
$("#outCalc-area").val($('#calculator2-area').val());
// Углы, шт
$("#outCalc-angles").val($('#calculator2-angles').val());
// Светильники, шт
$("#outCalc-fixtures").val($('#calculator2-fixtures').val());
// Люстры, шт
$("#outCalc-chandeliers").val($('#calculator2-chandeliers').val());
// Производитель
if( $('#manufacturer_pongs').is(':checked') ){
$("#outCalc-manufacturer").val($('label[for="manufacturer_pongs"]').text());
}
if( $('#manufacturer_polyplast').is(':checked') ){
$("#outCalc-manufacturer").val($('label[for="manufacturer_polyplast"]').text());
}
if( $('#manufacturer_msd').is(':checked') ){
$("#outCalc-manufacturer").val($('label[for="manufacturer_msd"]').text());
}
if( $('#manufacturer_descor').is(':checked') ){
$("#outCalc-manufacturer").val($('label[for="manufacturer_descor"]').text());
}
if( $('#manufacturer_photo').is(':checked') ){
$("#outCalc-manufacturer").val($('label[for="manufacturer_photo"]').text());
}
// Сумма
$("#outCalc-price").val($(".output_price span").text()+" Руб.");
}
var tablinks = document.querySelectorAll(".main-tab-link");
if (tablinks.length > 0) {
for (var i = 0; i < tablinks.length; ++i) {
tablinks[i].addEventListener('click', function () {
var link = this;
var targetID = link.dataset.targettabid;
var target = document.querySelector("[data-tabid=\"" + targetID + "\"]");
var tabs = target.parentNode.childNodes;
//console.log(link, targetID, target, target.parentNode);
//console.log(tabs);
if (targetID && target) {
$(tabs).addClass('hidden');
$(link).parent().children().removeClass('active');
target.classList.remove('hidden');
link.classList.add('active');
}
});
}
}
$('#calculator2-area').click(function(){ $('.calcbutton').click(); generateOutCalc();}); // Добавил ITF
$('#calculator2-angles').click(function(){ $('.calcbutton').click(); generateOutCalc();}); // Добавил ITF
$('#calculator2-fixtures').click(function(){ $('.calcbutton').click(); generateOutCalc();}); // Добавил ITF
$('#calculator2-chandeliers').click(function(){ $('.calcbutton').click(); generateOutCalc();}); // Добавил ITF
$('#calculator2-area') .bind('keyup mouseup', function () {
$('.calcbutton').click(); generateOutCalc();
});
$('#calculator2-angles') .bind('keyup mouseup', function () {
$('.calcbutton').click(); generateOutCalc();
});
$('#calculator2-fixtures') .bind('keyup mouseup', function () {
$('.calcbutton').click(); generateOutCalc();
});
$('#calculator2-chandeliers') .bind('keyup mouseup', function () {
$('.calcbutton').click(); generateOutCalc();
});
$('#manufacturer_pongs').click(function(){ $('.calcbutton').click(); generateOutCalc();}); // Добавил ITF
$('#manufacturer_polyplast').click(function(){ $('.calcbutton').click();generateOutCalc(); }); // Добавил ITF
$('#manufacturer_msd').click(function(){ $('.calcbutton').click(); generateOutCalc();}); // Добавил ITF
$('#manufacturer_descor').click(function(){ $('.calcbutton').click(); generateOutCalc();}); // Добавил ITF
$('#manufacturer_photo').click(function(){ $('.calcbutton').click(); generateOutCalc();}); // Добавил ITF
$('.calculator2-control').click(function () {
var input = this.parentNode.querySelector('.calculator2-input');
console.log(input);
if (this.classList.contains('plus')) {
input.value++;
} else if (this.classList.contains('minus') && input.value > 0) {
input.value--;
}
$('.calcbutton').click(); // Добавил ITF
generateOutCalc();// Добавил ITF
});
/*on calc*/
$(function () {
var calcbutton = document.querySelector('.calcbutton');
if (calcbutton) {
var calcDiscount = document.querySelector('.calc-discount');
$('.calcbutton').click(function () {
$(".output_price_none").fadeIn(1000);
$(".feedback_zamer").fadeIn(1000);
});
calcbutton.addEventListener('click', function () {
var loc = $(location).attr('href') ;
if (( loc == "" ) || (loc == "")){
var prods = {
pongs: 540,
polyplast: 480,
msd: 100,
descor: 770,
clipso: 1580,
cerutti: 1630,
photo: 1890
};
}
else{
var prods = {
pongs: 540,
polyplast: 480,
msd: 100,
descor: 770,
clipso: 1580,
cerutti: 1630,
photo: 1890
};
}
var corners = document.querySelector('input[name="angles"]').value;
if (corners > 4) {
if (( loc == "" ) || (loc == "")){
var cornerprice = (corners - 4) * 180;
}
else{
var cornerprice = (corners - 4) * 180;
}
}
else {
cornerprice = 0;
}
if (( loc == "" ) || (loc == "")){
var lightprice = 280 * document.querySelector('input[name="fixtures"]').value;
var lampprice = 430 * document.querySelector('input[name="chandeliers"]').value;
}
else{
var lightprice = 280 * document.querySelector('input[name="fixtures"]').value;
var lampprice = 430 * document.querySelector('input[name="chandeliers"]').value;
}
var prodprice = prods[document.querySelector('input[name="manufacturer"]:checked').value] * document.querySelector('input[name="area"]').value;
var price = prodprice + cornerprice + lightprice + lampprice,
span = document.querySelector('.output_price > span'),
input = document.querySelector('.output_price > input');
if (span) {
span.innerHTML = price;
}
if (input) {
input.value = price;
}
$('.personal_link.hidden').slideDown();
updateDiscount(price);
});
}
Файлы с которыми работает калькулятор:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script type="text/javascript" src="js/scriptcalc.js"></script>
Самое интересное что в файле scriptcalc.js изменения сделанные мной работают локально а на сайте нет, даже если все удалить в этом файле, на сайте калькулятор работает со значениями с сайта исходника...