Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 26.04.2016, 17:35
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

fos,
не понял ничего.
Ответить с цитированием
  #12 (permalink)  
Старый 26.04.2016, 18:02
fos fos вне форума
Аспирант
Отправить личное сообщение для fos Посмотреть профиль Найти все сообщения от fos
 
Регистрация: 26.04.2016
Сообщений: 40

Сообщение от рони Посмотреть сообщение
fos,
не понял ничего.
собственно про это я и говорил я искренне пытался объяснить, но даже хз как выразить это еще

попробую дообъяснить:

X = 30 -> Y = 30, 40 - означает, что при ползунке1 в позиции "30", в ползунке 2 доступны шкалы 30 и 40...
И так расписал все нужные комбинации....

X=30 & G=40 и X=40 & G=30 -> Z = 1095, - означает, что при позиции ползунка 1 = "30" и позиции ползуна 2 = "40" некая переменная (которая выводится на экран в виде "Стоимость: ___ " приобретает значение = 1095, равно как и комбинация 40 и 30...
И так тоже расписал все присвоения для всех комбинаций..

Если это вообще реально сделать - мнебы хотябы наметки узреть для 2х комбинаций, остальные естественно я бы сам допилил

Чувствую, что о5 невнятно объяснил...
Ответить с цитированием
  #13 (permalink)  
Старый 26.04.2016, 18:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

fos,
а в таком виде можно?
var price = {
    30: {
        30: 1095,
        40: 5000
    },
    40: {
        1: 400,
        5: 7000
    }
};
Ответить с цитированием
  #14 (permalink)  
Старый 26.04.2016, 21:28
fos fos вне форума
Аспирант
Отправить личное сообщение для fos Посмотреть профиль Найти все сообщения от fos
 
Регистрация: 26.04.2016
Сообщений: 40

var cena = {
    30: {
        30: 905,
        40: 1095
    },
    40: {
        30: 1095,
        40: 1305,
        60: 1730
    }
   50: {
        50: 1755,
        70: 2230
   }
   60: {
        40: 1730,
        60: 2255,
        90: 3045
    }
   70: {
        50: 2230,
        70: 3000,
        100: 3670
    }
   80: {
        80: 3500,
        120: 4655
    }  
   90: {
        60: 3045,
        90: 4200
    }  
   100: {
        70: 3670,
        100: 4755
    }  
   120: {
        80: 4655,
        120: 6305
    }  
};


Надеюсь так понятнее получилось? В любом случае спасибо, что объяснили каким языком объяснять, что вообще хочу сделать ))

При этом собственно еще бы не только ценник присваивался, но и деления в ползуне2 менялись...
Ответить с цитированием
  #15 (permalink)  
Старый 26.04.2016, 21:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

fos,
запятых у вас маловато
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  body {
  font-family: sans-serif;
  font-size: 12px;
}

#amount, #amount2, #amount3 {
  font-size: 22px;
  font-weight: bold;
  border:none;
  color: #ff5555;
  background: none;

}
#slider, #slider2{
   width: 300px;
}

 </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
  <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js">
</script>
  <script>
$(function() {
var price = {
    30: {
        30: 905,
        40: 1095
    },
    40: {
        30: 1095,
        40: 1305,
        60: 1730
    },
   50: {
        50: 1755,
        70: 2230
   },
   60: {
        40: 1730,
        60: 2255,
        90: 3045
    },
   70: {
        50: 2230,
        70: 3000,
        100: 3670
    },
   80: {
        80: 3500,
        120: 4655
    },
   90: {
        60: 3045,
        90: 4200
    },
   100: {
        70: 3670,
        100: 4755
    },
   120: {
        80: 4655,
        120: 6305
    }
};

    function comb(a) {
        return Object.keys(a)
    }

    var steps = comb(price);
    var num = steps[0];
    var steps2 = comb(price[num]);

    $("#slider2").slider({
        value: 0,
        min: 0,
        max: steps2.length - 1,
        step: 1,
        slide: function(event, ui) {
            var Y = steps2[ui.value];
            $("#amount2").val(Y);
            $("#amount3").val(price[num][Y]);
        },
        change: function(event, ui) {
            var Y = steps2[ui.value];
            $("#amount2").val(Y);
            $("#amount3").val(price[num][Y]);
        }
    });
    $("#slider").slider({
        value: 0,
        min: 0,
        max: steps.length - 1,
        step: 1,
        slide: function(event, ui) {
            num = steps[ui.value];
            $("#amount").val(num);
            steps2 = comb(price[num]);
            $("#slider2").slider("option","max", steps2.length - 1);
            $("#slider2").slider("option", "value", 0)
        },
        change: function(event, ui) {
            num = steps[ui.value];
            $("#amount").val(num);
            steps2 = comb(price[num]);
            $("#slider2").slider("option","max", steps2.length - 1);
            $("#slider2").slider("option", "value", 0)
        }
    });
    $("#slider").slider("option", "value", 0)
});
  </script>
</head>

<body>
    <p>
  <input type="text" id="amount" readonly>
</p>

<div id="slider"></div>

<p>
  <input type="text" id="amount2" readonly>
</p>

<div id="slider2"></div>
<p>
  <input type="text" id="amount3" readonly>
</p>
</body>
</html>
Ответить с цитированием
  #16 (permalink)  
Старый 26.04.2016, 22:28
fos fos вне форума
Аспирант
Отправить личное сообщение для fos Посмотреть профиль Найти все сообщения от fos
 
Регистрация: 26.04.2016
Сообщений: 40

Сообщение от рони Посмотреть сообщение
fos,
запятых у вас маловато
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  body {
  font-family: sans-serif;
  font-size: 12px;
}

#amount, #amount2, #amount3 {
  font-size: 22px;
  font-weight: bold;
  border:none;
  color: #ff5555;
  background: none;

}
#slider, #slider2{
   width: 300px;
}

 </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
  <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js">
</script>
  <script>
$(function() {
var price = {
    30: {
        30: 905,
        40: 1095
    },
    40: {
        30: 1095,
        40: 1305,
        60: 1730
    },
   50: {
        50: 1755,
        70: 2230
   },
   60: {
        40: 1730,
        60: 2255,
        90: 3045
    },
   70: {
        50: 2230,
        70: 3000,
        100: 3670
    },
   80: {
        80: 3500,
        120: 4655
    },
   90: {
        60: 3045,
        90: 4200
    },
   100: {
        70: 3670,
        100: 4755
    },
   120: {
        80: 4655,
        120: 6305
    }
};

    function comb(a) {
        return Object.keys(a)
    }

    var steps = comb(price);
    var num = steps[0];
    var steps2 = comb(price[num]);

    $("#slider2").slider({
        value: 0,
        min: 0,
        max: steps2.length - 1,
        step: 1,
        slide: function(event, ui) {
            var Y = steps2[ui.value];
            $("#amount2").val(Y);
            $("#amount3").val(price[num][Y]);
        },
        change: function(event, ui) {
            var Y = steps2[ui.value];
            $("#amount2").val(Y);
            $("#amount3").val(price[num][Y]);
        }
    });
    $("#slider").slider({
        value: 0,
        min: 0,
        max: steps.length - 1,
        step: 1,
        slide: function(event, ui) {
            num = steps[ui.value];
            $("#amount").val(num);
            steps2 = comb(price[num]);
            $("#slider2").slider("option","max", steps2.length - 1);
            $("#slider2").slider("option", "value", 0)
        },
        change: function(event, ui) {
            num = steps[ui.value];
            $("#amount").val(num);
            steps2 = comb(price[num]);
            $("#slider2").slider("option","max", steps2.length - 1);
            $("#slider2").slider("option", "value", 0)
        }
    });
    $("#slider").slider("option", "value", 0)
});
  </script>
</head>

<body>
    <p>
  <input type="text" id="amount" readonly>
</p>

<div id="slider"></div>

<p>
  <input type="text" id="amount2" readonly>
</p>

<div id="slider2"></div>
<p>
  <input type="text" id="amount3" readonly>
</p>
</body>
</html>
пипец) Я не знаю, как Вы это сделали, но оно работает!

Еще один вопрос назрел (сорри за наглость...) А ползунок 2 каким-то параметром можно заставить отображаться вертикально, а не горизонтально?
Ответить с цитированием
  #17 (permalink)  
Старый 26.04.2016, 22:34
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Сообщение от fos
А ползунок 2 каким-то параметром можно заставить отображаться вертикально,
http://api.jqueryui.com/slider/#option-orientation
Ответить с цитированием
  #18 (permalink)  
Старый 26.04.2016, 22:46
fos fos вне форума
Аспирант
Отправить личное сообщение для fos Посмотреть профиль Найти все сообщения от fos
 
Регистрация: 26.04.2016
Сообщений: 40

Сообщение от рони Посмотреть сообщение
http://api.jqueryui.com/slider/#option-orientation
Мужик, ты реально крутой! Спасибо тебе большое!

Если нужно помочь с подарком по какому-либо поводу - пиши, помогу!!!
Ответить с цитированием
  #19 (permalink)  
Старый 26.04.2016, 23:10
fos fos вне форума
Аспирант
Отправить личное сообщение для fos Посмотреть профиль Найти все сообщения от fos
 
Регистрация: 26.04.2016
Сообщений: 40

Сообщение от рони Посмотреть сообщение
http://api.jqueryui.com/slider/#option-orientation
Еще 1 дурацкий вопрос... А отображать на позунке деления можно? не обязательно циферные значения, хотябы тупо черточки
Ответить с цитированием
  #20 (permalink)  
Старый 26.04.2016, 23:17
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

fos,
за чёрточками лучше сюда ... http://ionden.com/a/plugins/ion.rangeSlider/
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск