Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.09.2008, 14:27
Аватар для Bad Request
Интересующийся
Отправить личное сообщение для Bad Request Посмотреть профиль Найти все сообщения от Bad Request
 
Регистрация: 10.07.2008
Сообщений: 26

Можно ли одновременно изменить фон и текст в поле?
Здравствуйте. Есть форма для ввода текста.
<form>
<input type="text" onfocus="this.style.background='#FFF0C6'" onblur="this.style.background=''"/>
<p>
<textarea cols="40" rows="10" onfocus="this.style.background='#FFF0C6'" onblur="this.style.background=''">
</textarea>
</p>
</form>

Можно ли при событии onfocus изменить не только цвет фона поля, но еще и стиль текста одновременно? Если да, то как?
Ответить с цитированием
  #2 (permalink)  
Старый 23.09.2008, 14:28
Кандидат Javascript-наук
Отправить личное сообщение для SunnyDay Посмотреть профиль Найти все сообщения от SunnyDay
 
Регистрация: 22.09.2008
Сообщений: 111

Стандартным элементом textarea - нет, но можно написать свой.
Ответить с цитированием
  #3 (permalink)  
Старый 23.09.2008, 14:37
Флудер
Отправить личное сообщение для ZoNT Посмотреть профиль Найти все сообщения от ZoNT
 
Регистрация: 24.07.2008
Сообщений: 1,271

textarea.onfocus = function() {
  this.style.fontStyle = "italic";
  this.style.color = "red";
  this.style.fontWeight = "bold";
}
Ответить с цитированием
  #4 (permalink)  
Старый 23.09.2008, 14:42
Кандидат Javascript-наук
Отправить личное сообщение для SunnyDay Посмотреть профиль Найти все сообщения от SunnyDay
 
Регистрация: 22.09.2008
Сообщений: 111

Упс, я подумал что нужны разные стили для разных текстовых выражений в текстареа.
Ответить с цитированием
  #5 (permalink)  
Старый 23.09.2008, 15:42
Аватар для Bad Request
Интересующийся
Отправить личное сообщение для Bad Request Посмотреть профиль Найти все сообщения от Bad Request
 
Регистрация: 10.07.2008
Сообщений: 26

Спасибо, ZoNT! Я должен вам море бухла.
Скажите, а можно написать универсальную функцию, чтобы она меняла фон и текст при обращении к любому полю в форме?
Ответить с цитированием
  #6 (permalink)  
Старый 23.09.2008, 15:55
Флудер
Отправить личное сообщение для ZoNT Посмотреть профиль Найти все сообщения от ZoNT
 
Регистрация: 24.07.2008
Сообщений: 1,271

можно. Только я занят и писать не хочу
И ещё: я не пью
Ответить с цитированием
  #7 (permalink)  
Старый 23.09.2008, 16:11
Аватар для Bad Request
Интересующийся
Отправить личное сообщение для Bad Request Посмотреть профиль Найти все сообщения от Bad Request
 
Регистрация: 10.07.2008
Сообщений: 26

Ладно, буду сам ковырять.
Не пьете? А я вас научу. Вы меня кодировать, а я вас злоупотреблять.
Ответить с цитированием
  #8 (permalink)  
Старый 23.09.2008, 16:16
Флудер
Отправить личное сообщение для ZoNT Посмотреть профиль Найти все сообщения от ZoNT
 
Регистрация: 24.07.2008
Сообщений: 1,271

Дык я уже третий год как завязал..
Ответить с цитированием
  #9 (permalink)  
Старый 24.09.2008, 21:38
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 03.04.2008
Сообщений: 6,234

Сообщение от Bad Request
Скажите, а можно написать универсальную функцию, чтобы она меняла фон и текст при обращении к любому полю в форме?
<form>
<input type="text" onfocus="this.style.background='#FFF0C6'" onblur="this.style.background=''"/>
<p>
<textarea cols="40" rows="10" onfocus="set_style(style)" onblur="this.style.background=''">
</textarea>
</p>
</form>

function set_style(obj) {
  obj.style.fontStyle = "italic";
  obj.style.color = "red";
  obj.style.fontWeight = "bold";
}
Ответить с цитированием
  #10 (permalink)  
Старый 24.09.2008, 22:11
Аватар для Bad Request
Интересующийся
Отправить личное сообщение для Bad Request Посмотреть профиль Найти все сообщения от Bad Request
 
Регистрация: 10.07.2008
Сообщений: 26

Весьма признателен, Gvozd! А ведь не зря говорят, что пьющие люди добрее! Только так, как вы написали, не пашет:
<textarea cols="40" rows="10" onfocus="set_style(style)">

Так пашет:
<textarea cols="40" rows="10" onfocus="set_style(this)">

А как же мне сделать, чтобы при событии onblur шрифт и цвет фона опять становились по умолчанию?
Я написал еще одну функцию:
<textarea cols="40" rows="10" onfocus="set_style(this)" onblur="rst(this)">

function rst(obj) 
{
	obj.style.fontStyle = "";
  obj.style.color = "";
  obj.style.fontWeight = "";
}

Есть более умный способ?

Последний раз редактировалось Bad Request, 24.09.2008 в 22:47.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос: И опять про offsetLeft... sigurd Общие вопросы Javascript 11 04.10.2010 13:06