Сложение и вычитание, получаются разные значения!
Подскажите, почему при вычитание (-) всё срабатывает правильно
А при сложении (+) просто прибавляется ещё одно число к существующему. Проверить как это работает можете на странице: http://payforyou.top/limit.php А вот код: <script> window.onload = function(){ document.getElementById('button').onclick = function() { var balanc = "20"; var gamebalanc = "3819430"; var bits = document.getElementById("bits").value; var stav = document.getElementById("stav").value; function randomInteger(min, max) { var rand = min + Math.random() * (max - min); rand = Math.round(rand); return rand; } var sum = ( randomInteger(0, 100) ) if (balanc > bits) { if (stav < sum) { var resbits = bits * 2; var newuserbal = balanc + resbits; var newgamebal = gamebalanc - resbits; } if (stav > sum) { var newuserbal = balanc - bits; var newgamebal = gamebalanc + bits; } } document.getElementById('userbal').innerHTML=newuserbal; document.getElementById('gamebal').innerHTML=newgamebal; document.getElementById('result').innerHTML=sum; animate({ duration: 1000, timing: function(timeFraction) { return Math.pow(timeFraction, 2); }, draw: function(progress) { brick.style.left = progress * sum + '%'; } }); }; } </script> |
Цитата:
Либо var bits = parseInt(document.getElementById("bits").value);, либо var bits = +document.getElementById("bits").value; |
Попробовал оба варианта и история та же.
Если я правильно понял нужно было заменить вот эту строчку var bits = document.getElementById("bits").value; на один из этих вариантов. Либо var bits = parseInt(document.getElementById("bits").value);, либо var bits = +document.getElementById("bits").value; Помогите пож. |
Теперь всё работает правильно, преобразовал в числа.
<script> window.onload = function(){ document.getElementById('button').onclick = function() { var balanc = "20"; var gamebalanc = "3819430"; var balanc = Number(balanc); var gamebalanc = Number(gamebalanc); var bits = document.getElementById("bits").value; var stav = document.getElementById("stav").value; var bits = Number(document.getElementById("bits").value); var stav = Number(document.getElementById("stav").value); function randomInteger(min, max) { var rand = min + Math.random() * (max - min); rand = Math.round(rand); return rand; } var sum = ( randomInteger(0, 100) ) if (balanc > bits) { if (stav < sum) { var resbits = bits * 2; var newuserbal = balanc + resbits; var newgamebal = gamebalanc - resbits; } if (stav > sum) { var newuserbal = balanc - bits; var newgamebal = gamebalanc + bits; } } document.getElementById('userbal').innerHTML=newuserbal; document.getElementById('gamebal').innerHTML=newgamebal; document.getElementById('result').innerHTML=sum; animate({ duration: 1000, timing: function(timeFraction) { return Math.pow(timeFraction, 2); }, draw: function(progress) { brick.style.left = progress * sum + '%'; } }); }; } </script> |
var a = '1', b = '2'; //строки alert(a + b) //конкатенация строк a = parseInt(a); alert(a + b) //все равно конкатенация, так как b все еще строка b = parseInt(b); alert(a + b) //сложение, ибо числа |
Цитата:
Изначально Переменные: balance и gamebalance имеют значения 20 и 3819430 И при каждом нажатии на кнопку старт скрипт отталкивается от этих значений, а мне нужно чтоб он отталкивался от новых значений которые собственно меняются в строках Game Balance и Your Balance на странице http://payforyou.top/limit.php |
Ну так перезаписывайте balance и gamebalance новыми значениями.
|
Цитата:
Просто покажите пож. <script> window.onload = function(){ document.getElementById('button').onclick = function() { var balanc = "20"; var gamebalanc = "3819430"; var balanc = Number(balanc); var gamebalanc = Number(gamebalanc); var bits = document.getElementById("bits").value; var stav = document.getElementById("stav").value; var bits = Number(document.getElementById("bits").value); var stav = Number(document.getElementById("stav").value); function randomInteger(min, max) { var rand = min + Math.random() * (max - min); rand = Math.round(rand); return rand; } var sum = ( randomInteger(0, 100) ); var sum = Number(sum); if (balanc > bits) { if (stav > sum) { var resbits = bits * 2; var newuserbal = balanc + resbits; var newgamebal = gamebalanc - resbits; document.getElementById('userbal').innerHTML=newuserbal; document.getElementById('gamebal').innerHTML=newgamebal; document.getElementById('msg').innerHTML=' '; } if (stav < sum) { var newuserbal = balanc - bits; var newgamebal = gamebalanc + bits; document.getElementById('userbal').innerHTML=newuserbal; document.getElementById('gamebal').innerHTML=newgamebal; document.getElementById('msg').innerHTML=' '; } } else document.getElementById('msg').innerHTML='Insufficient Funds'; document.getElementById('result').innerHTML=sum; animate({ duration: 1000, timing: function(timeFraction) { return Math.pow(timeFraction, 2); }, draw: function(progress) { brick.style.left = progress * sum + '%'; } }); }; } </script> |
var balanc = 20;
var gamebalanc = 3819430; var gamebalanc = Number(gamebalanc); var bits = document.getElementById("bits").value; var stav = document.getElementById("stav").value; var bits = +document.getElementById("bits").value; var stav = +document.getElementById("stav").value; var newgamebal = gamebalanc - resbits; balanc += resbits; gamebalanc -= resbits; и оперировать balanc и gamebalanc. |
Цитата:
|
Часовой пояс GMT +3, время: 18:02. |