JavaScript

Последние штрихи к калькулятору. Запрет кликать мышкой по форме ввода...

Отмена действия по умолчанию на сколько помню preventDefault или return false. Но что-то не срабатывает...
А во вторых - как дизайн?
https://jsfiddle.net/rkzg2n9o/11/
Наверное осталось добавить только скобки приоритета (с этим точно справлюсь), проверку деления на 0 и запретить ввод чисел типа 0356
Dennispetersok
Dennispetersok
55 955
установка html атрибута readonly или в крайнем случае disabled
запретит пользователю вводить данные с клавиатуры
а ) - http://htmlbook.ru/html/input/readonly http://htmlbook.ru/html/input/disabled

б ) - и через css - Селекторы атрибутов можете раскрасить как угодно
эти оключеные html элементы - теги
http://htmlbook.ru/css/selector/attr
как css пример - красим по атрибуту
input#form[readonly] { background:#0cc ; }

в ) - по js по простому в конце всех click функций укажите return false;
but[ i ].onclick = function{){
/* ...ваш код */

return false; /* здесь */
}
Дмитрий Ососков
Дмитрий Ососков
16 208
Лучший ответ
Великолепный по дизайну калькуплятор, лучше не расскрасишь. Вместо preventDefault используй Alert и в нём напиши, вам нельзя сюда кликать, запрещено минздравом.
EM
Eziz Mamedov
74 422
ну как... дизайн соответствует тому времени, в котором ты застрял - аля 90ые!, если не 80-ые... смотря кому ты делаешь заказ... откудь мы знаем... может старому мердуну - ну так и флаг в руки...
Dennispetersok Калькулятор учебный, ля-ля не надо. И в 90-е как раз не было CSS (по крайней мере никаких CSS-градиентов точно не было)
Dennispetersok Какой заказ??? Повторяю - калькулятор учебный
Дизайн много лучше, чем был.
Петр Герасимов
Петр Герасимов
42 845
Для меня калькулятор на Пайтоне - это как на скрине внизу. А вообще-то в калькуляторе можно предусмотреть ещё очень многое: решение задач Коши или краевых задач для диффуров с выводом их графика на экран (по крайней мере для одномерных функций !), решение интегральных уравнений, включая сингулярные и нелинейные со всевозможными бифуркациями, а также решение любых школьных задач по алгебре, анализу, тригонометрии и геометрии Евклида. Тогда это будет хороший калькулятор! (◔‿◔)
молодец что развиваешься и пишеш софт
Денис Иванов
Денис Иванов
20 993
Денис Иванов Сложновато будет конкурировать но ты руки не опускай браь https://coub.com/view/2tl1te
9--7 решил 16
Саня Гуляев
Саня Гуляев
15 423
Dennispetersok А что не так? Разве не 16 должно быть?
Dennispetersok Возможность повторно вводить знаки друг за другом я убрал. Оставил только для двух минусов, на случай если второй операнд отрицательное число
Теперь давай добавляй туда 1/x, x^2, квадратный корень из x, все функции инженерного калькулятора.

В общем, реализуй удобный интерфейс для добавления любых операций (т. е. функций). Например интерфейс, принимающий два аргумента — количество ожидаемых операндов, а также функцию, которая должна произвести вычисления с полученными операндами.

Потому что сейчас смотреть на код физически больно. Тебе его и самому понять сложно будет через неделю.
Сергей Антонов Я предлагаю вообще ориентироваться на калькулятор Google, который встроен в поисковик.

Если реализовать интерфейс, который позволит легко добавлять новые функции, то дело за малым — добавлять все подходящие функции, хоть несколько тысяч (как сделал Google).
document.getElementById('form').removeEventListener('input'); Попробуй так