JS не считает
Привет уважаемые программисты. Объясните пожалуйста где я ошибся. Дело в том, что вторая функция не хочет вычитать из переменной Opacity.
В первой функции я прибавляю к Opacity до тех пор, пока она не превысит 1, после чего завершаю функцию методом clearInterval(setIN). Тут всё ожидаемо, всё работает. Затем запускаю вторую функцию и ничего. Вычитает только один раз до 0.9, а дальше не хочет. Если поменять - на + то прибавляет без проблем. Вот код: function openauthorize() { if(opacity>1) clearInterval(setIN); opacity=opacity+0.1; document.getElementById('df').innerHTML=opacity; } function closeauthorize() { opacity=opacity-0.1;// если я тут поставлю + то считает нормально document.getElementById('df').innerHTML=opacity; } |
Цитата:
|
Извините, не понял? Какой пример?
|
Цитата:
|
Подключаемый JS
var opacity = 0; var start = 0; function openauthorize() { if(opacity>1) clearInterval(setIN); opacity=opacity+0.1; document.getElementById('df').innerHTML=opacity; } function closeauthorize() { opacity=opacity-0.1; document.getElementById('df').innerHTML=opacity; } HTML страница ... <div id='df'></div> <span onClick='var setIN=setInterval(openauthorize,10)'>Плюс</span> <span onClick='setInterval(closeauthorize,10)'>Минус</span> ... |
Detex, попробовал собрать твой "пример"...
<!DOCTYPE html> <html> <head> <title></title> <style type="text/css"> </style> <script> var opacity = 0; var start = 0; function openauthorize() { if(opacity>1) { clearInterval(setIN); return } opacity=opacity+0.1; document.getElementById('df').innerHTML=opacity; } function closeauthorize() { opacity=opacity-0.1; document.getElementById('df').innerHTML=opacity; } </script> </head> <body> <div id='df'></div> <span onClick='var setIN=setInterval(openauthorize,10)'>Плюс</span> <span onClick='setInterval(closeauthorize,10)'>Минус</span> </body> </html> Итог Цитата:
Цитата:
Цитата:
|
Ваш пример тоже не работает, но Вы навели меня на правильную мысль, а именно, видимо, в onClick нельзя объявить переменную (например: onClick(var setIN=setInterval(...))).
Я объявил её в скрипте и всё заработало. Спасибо за помощь. |
Цитата:
|
Часовой пояс GMT +3, время: 14:39. |