28.08.2016, 09:27
|
Новичок на форуме
|
|
Регистрация: 28.08.2016
Сообщений: 1
|
|
Задать тело одиночной функции 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-элементы
{}
|
|
28.08.2016, 09:51
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
jzetko,
какая проблема назначить в функции обработку события для i1?
i1.addEventListener ... далее сами
|
|
28.08.2016, 17:43
|
Аспирант
|
|
Регистрация: 21.08.2016
Сообщений: 77
|
|
как вариант
<input> <input>
<script>
inputs = Array.from(document.querySelectorAll("input"))
inputs.forEach(input => {input.oninput = function(){inputs[0].value = inputs[1].value = this.value}})
</script>
|
|
28.08.2016, 18:00
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
scrollquest,
а где функция f ?
|
|
28.08.2016, 18:33
|
Аспирант
|
|
Регистрация: 21.08.2016
Сообщений: 77
|
|
рони,
разуй глаза, умник
<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>
Еще ченть пояснить, или пойдешь попросишь у мамки борща?
|
|
28.08.2016, 19:08
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
scrollquest,
задание не выполнено, садись двоечник
смотри начало решения в посте 2.
|
|
28.08.2016, 19:16
|
Аспирант
|
|
Регистрация: 21.08.2016
Сообщений: 77
|
|
рони,
ты реально какой то тугой. Может вот так допрет?
<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>
какую тебе эф надо, ты чо идиот?
|
|
28.08.2016, 19:19
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
scrollquest,
function f(i1,i2) // i1,i2 - input-элементы
{/* это тело функции, i1 и i2 аргументы, здесь код написать нужно */ }
Последний раз редактировалось рони, 28.08.2016 в 19:23.
|
|
28.08.2016, 19:33
|
Аспирант
|
|
Регистрация: 21.08.2016
Сообщений: 77
|
|
рони,
А, ну напиши там параметры, епт, цирк то уехал
<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, 28.08.2016 в 19:35.
|
|
28.08.2016, 19:44
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
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>
|
|
|
|