Вход

Просмотр полной версии : Opera не выполняет style.fontSize=... в поле input


Маэстро
25.05.2011, 17:55
Обнаружил, что Opera не выполняет style.fontSize=... в поле input в ситуации, когда в стиле input задано абсолютное позиционирование и размеры.
<script type="text/javascript">
function size1(){document.getElementById('inp').style.fontS ize='10px'} // в Opera не работает пока не поставишь курсор в input
function size2(){document.getElementById('inp').style.fontS ize='20px'} // в Opera не работает пока не поставишь курсор в input
</script>

<input type="text" value="test" id="inp" style="position:absolute; width:100px; height:50px">
<br><br><br><br>
<input type="button" value="10" onclick=size1()>
<input type="button" value="20" onclick=size2()>

Как бороться? Пока работает только два варианта:
1. после смены myinput.style.fontSize делать установку фокуса в этот input, т.е. myinput.focus()
2. после смены myinput.style.fontSize делать переприсвоение значения input самому себе: myinput.value=myinput.value;

Может предложите другой бубен?
p.s. Opera 11.10

x-yuri
25.05.2011, 20:22
<script type="text/javascript">
function size1(){
document.getElementById('inp').style.fontSize='10p x';
document.getElementById('inp').style.outlineColor = 'rgb('+Math.floor(Math.random()*256)+', 0, 0)';
} // в Opera не работает пока не поставишь курсор в input
function size2(){
document.getElementById('inp').style.fontSize='20p x';
document.getElementById('inp').style.outlineColor = 'rgb('+Math.floor(Math.random()*256)+', 0, 0)';
} // в Opera не работает пока не поставишь курсор в input
</script>

<input type="text" value="test" id="inp" style="position:absolute; width:100px; height:50px">
<br><br><br><br>
<input type="button" value="10" onclick=size1()>
<input type="button" value="20" onclick=size2()>

оно?

Маэстро
26.05.2011, 11:19
Да, спасибо, как вариант это работает. Вот только не хочется из-за броузерных глюков удлинять и удлинять javascript-код..

x-yuri
26.05.2011, 16:56
а зачем, собственно, менять font-size input'а?

Маэстро
03.06.2011, 18:24
а зачем, собственно, менять font-size input'а?
Есть в системе такая функция - изменение своего имени (ника). Также изменение своего шрифта (размер, цвет,...). Изменения шрифта должны сразу отображаться (проявляться) в поле инпут на имени пользователя (чтобы не делать отдельную DIV-строку типа "образец шрифта").

serafim
05.06.2011, 06:08
У меня он совсем не разработан.

Маэстро
20.06.2011, 12:03
У меня он совсем не разработан.
Простите, Вы это о чем?