Javascript 计算滑块在一定数量后增加
我有一个计算(x*y)*35的滑块。如果(x*y)=>200,那么它应该是: (x*y)*35+5 但计算结果应该在200之后。例如:Javascript 计算滑块在一定数量后增加,javascript,html,jquery,css,slider,Javascript,Html,Jquery,Css,Slider,我有一个计算(x*y)*35的滑块。如果(x*y)=>200,那么它应该是: (x*y)*35+5 但计算结果应该在200之后。例如: x = 1 y = 50 z = 1750 x = 1 y = 200 z = 7000 x = 1 y = 201 z = 7040 所以基本上这个数字应该增加35,直到x*y=>200,然后应该增加40 这是我的代码: html JS var comsslider=document.getElementById(“销售”); var comoutpu
x = 1
y = 50
z = 1750
x = 1
y = 200
z = 7000
x = 1
y = 201
z = 7040
所以基本上这个数字应该增加35,直到x*y=>200,然后应该增加40
这是我的代码:
html
JS
var comsslider=document.getElementById(“销售”);
var comoutput=document.getElementById(“saleprice”);
var salep=document.getElementById(“saleprice”);
var comp=document.getElementById(“佣金”);
var totalout=document.getElementById(“佣金总额”);
var slider=document.getElementById(“佣金范围”);
var输出=document.getElementById(“佣金”);
comoutput.innerHTML=comslider.value;//显示默认滑块值
output.innerHTML=slider.value;//显示默认滑块值
//更新当前滑块值(每次拖动滑块控制柄时)
comslider.oninput=函数(){
coOutput.innerHTML=this.value;
calcTotalCommission();
}
//更新当前滑块值(每次拖动滑块控制柄时)
slider.oninput=函数(){
output.innerHTML=this.value;
calcTotalCommission();
}
//使用当前值更新TotalCommission编号
功能计算佣金(价格、百分比){
var total=parseInt(salep.innerHTML)*(parseFloat(comp.innerHTML)*35);
totalout.innerHTML=total.toFixed(0);
}
在获取总数后添加一个IF检查。如果总数大于200,则以40的倍数再次运行该函数,否则,如果不大于200,服务器总数将正常运行
var-comsslider=document.getElementById(“销售”);
var comoutput=document.getElementById(“saleprice”);
var salep=document.getElementById(“saleprice”);
var comp=document.getElementById(“佣金”);
var totalout=document.getElementById(“佣金总额”);
var slider=document.getElementById(“佣金范围”);
var输出=document.getElementById(“佣金”);
comoutput.innerHTML=comslider.value;//显示默认滑块值
output.innerHTML=slider.value;//显示默认滑块值
//更新当前滑块值(每次拖动滑块控制柄时)
comslider.oninput=函数(){
coOutput.innerHTML=this.value;
calcTotalCommission();
}
//更新当前滑块值(每次拖动滑块控制柄时)
slider.oninput=函数(){
output.innerHTML=this.value;
calcTotalCommission();
}
//使用当前值更新TotalCommission编号
功能计算佣金(价格、百分比){
var total=parseInt(salep.innerHTML)*(parseFloat(comp.innerHTML)*35);
//检查总数是否大于200,如果大于200,则获取新的总数
如果(总数>200){
总计=parseInt(salep.innerHTML)*(parseFloat(comp.innerHTML)*40);
}
totalout.innerHTML=total.toFixed(0);
}
.slidecontainer{
宽度:100%;
}
.滑块{
-webkit外观:无;
宽度:100%;
高度:15px;
边界半径:5px;
背景#d3;
大纲:无;
不透明度:0.7;
-webkit转换:.2s;
转变:不透明度;
}
.滑块:悬停{
不透明度:1;
}
.滑块::-webkit滑块拇指{
-webkit外观:无;
外观:无;
宽度:25px;
高度:25px;
边界半径:50%;
背景#4CAF50;
光标:指针;
}
.滑块::-moz范围拇指{
宽度:25px;
高度:25px;
边界半径:50%;
背景#4CAF50;
光标:指针;
}
.输出框p{
填充顶部:20px;
字体大小:30px;
字体系列:Dosis;
}
.slidecontainer p{
字体大小:25px;
字体系列:Dosis;
}
Elever:
Paket sålda:
总计::-
似乎是一个if/else是您所需要的吗???谢谢您的回复,它接近我想要实现的目标。我要找的是在总值为7000之后,下一步应该是7040,而不是7035或8040。在你的例子中是8040,因为它重新计算了整个方程。我只想在7000后增加。不是总数本身。我希望你能理解。
<div class="slidecontainer">
<p>Elever: <span id="saleprice"></span></p>
<input type="range" min="0" max="100" value="1" class="slider" id="sale">
</div>
<div class="slidecontainer">
<p>Paket sålda: <span id="commission"></span></p>
<input type="range" min="0" max="200" value="1" class="slider" id="commission_range" step="1">
</div>
<div class="outputbox">
<p>Totalt: <span id="total_commission" ></span>:-</p>
</div>
.slidecontainer {
width: 100%;
}
.slider {
-webkit-appearance: none;
width: 100%;
height: 15px;
border-radius: 5px;
background: #d3d3d3;
outline: none;
opacity: 0.7;
-webkit-transition: .2s;
transition: opacity .2s;
}
.slider:hover {
opacity: 1;
}
.slider::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 25px;
height: 25px;
border-radius: 50%;
background: #4CAF50;
cursor: pointer;
}
.slider::-moz-range-thumb {
width: 25px;
height: 25px;
border-radius: 50%;
background: #4CAF50;
cursor: pointer;
}
.outputbox p{
padding-top:20px;
font-size:30px;
font-family: Dosis;
}
.slidecontainer p{
font-size: 25px;
font-family: Dosis;
}
<script>
var comslider = document.getElementById("sale");
var comoutput = document.getElementById("saleprice");
var salep = document.getElementById("saleprice");
var comp = document.getElementById("commission");
var totalout = document.getElementById("total_commission");
var slider = document.getElementById("commission_range");
var output = document.getElementById("commission");
comoutput.innerHTML = comslider.value; // Display the default slider value
output.innerHTML = slider.value; // Display the default slider value
// Update the current slider value (each time you drag the slider handle)
comslider.oninput = function() {
comoutput.innerHTML = this.value;
calcTotalCommission();
}
// Update the current slider value (each time you drag the slider handle)
slider.oninput = function() {
output.innerHTML = this.value;
calcTotalCommission();
}
// Update the totalCommision number with current values
function calcTotalCommission(price, percentage) {
var total = parseInt(salep.innerHTML) * (parseFloat(comp.innerHTML) * 35);
totalout.innerHTML = total.toFixed(0);
}
</script>