Задать тело одиночной функции f таким образом
Здравствуйте. Недавно начал изучать javascript. Наткнулся на вот такую задачку. Интересно узнать решение (как-то не доходит оно пока до меня.))
Буду признателен за помощь.) Задайте тело одиночной функции f таким образом, чтобы значение i2.value стало синхронизировано с i1.value, то есть, оно должно быть равно i1.value и в дальнейшем меняться при изменении i1.value. i1 и i2 – input элементы. Ограничение1: нельзя использовать глобальные переменные Ограничение2: i1.id и i2.id неопределены, и их нельзя определять Ограничение3: нельзя модифицировать свойства i1 и i2, кроме value и свойств, отвечающих за события (onChange и т.п.). function f(i1,i2) // i1,i2 - input-элементы {} |
jzetko,
какая проблема назначить в функции обработку события для i1? i1.addEventListener ... далее сами |
как вариант
<input> <input> <script> inputs = Array.from(document.querySelectorAll("input")) inputs.forEach(input => {input.oninput = function(){inputs[0].value = inputs[1].value = this.value}}) </script> |
scrollquest,
а где функция f ? |
рони,
разуй глаза, умник <input> <input> <script> inputs = Array.from(document.querySelectorAll("input")) inputs.forEach(input => {f = input.oninput = function(){inputs[0].value = inputs[1].value = this.value}}) alert(f) </script> Еще ченть пояснить, или пойдешь попросишь у мамки борща? |
scrollquest,
задание не выполнено, садись двоечник :) смотри начало решения в посте 2. |
рони,
ты реально какой то тугой. Может вот так допрет? <input> <input> <script> f = function(){inputs[0].value = inputs[1].value = this.value} inputs = Array.from(document.querySelectorAll("input")) inputs.forEach(input => { input.oninput = f}) </script> какую тебе эф надо, ты чо идиот? |
scrollquest,
function f(i1,i2) // i1,i2 - input-элементы {/* это тело функции, i1 и i2 аргументы, здесь код написать нужно */ } |
рони,
А, ну напиши там параметры, епт, цирк то уехал <input> <input> <script> f = function(input1, input2){ input1.oninput = input2.oninput = function(){input1.value = input2.value = this.value} } inputs = Array.from(document.querySelectorAll("input")) f(inputs[0], inputs[1]) </script> |
scrollquest,
читать то когда научишься что ТС пишет? <input> <input> <script> f = function(input1, input2){ input1.oninput = function(){input2.value = this.value} } inputs = Array.from(document.querySelectorAll("input")) f(inputs[0], inputs[1]) </script> |
Часовой пояс GMT +3, время: 22:21. |