Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отловить изменение базового шрифта. 
V
    Опции темы
Хоббит
Дата 2.7.2007, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1263
Регистрация: 6.11.2005

Репутация: нет
Всего: 1



Надо отловить изменение базового шрифта. То есть, то что происходит после нажатия Ctrl + в FireFox или выбора шрифта в меню вид в Explorer. Какие будут варианты?
PM MAIL   Вверх
ksnk
Дата 2.7.2007, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



Как собственно отловить - не знаю, а вот как понять - шрифт какого размера установлен - можно , к примеру так
  • <span id="test">X</span>
  • Установить этому спану какой-нибудь определенный шрифт
  • Сделать его невидимым с помошью opacity=0 или просто цвет==цвет бакграунда.
  • Проверить у этого спана после загрузки всего документа атрибуты scrollWidth,scrollHeigth.

При выборе шрифта по умолчанию для FireFox у меня показывает 11x19. Соответственно 
Ctrl- 10x16, 9x15, 6x10,4x5, 2x4, 1x2
Ctr+ 13x21,17x27,23x36,35x55,...

понятно, что можно не заводить дополнительный спан, а проверять размер какого-то стандартного для дизайна куска текста. 

Для IE при смене шрифта вызывается onresize, для FF - не знаю что вызывается...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
SelenIT
Дата 2.7.2007, 21:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



Для FF Ctrl-± можно отловить именно как нажатие клавиш, но вот при смене шрифта через меню не вызывается ничего... насколько я понимаю, в этом-то и главная проблема.

Пока придумал лишь такой изврат (не считая очевидно большего изврата с периодическим замером эталонного элемента по таймеру) - использовать в качестве эталонного элемента "замаскированный" iframe высотой 1em, а уже в него грузить страничку с обработчиком onresize. Как минимум, в FF2 это работает...

Upd.: работает также в IE6 и Opera 8-9. А вот срабатывания onresize в IE в основном окне при смене шрифта я почему-то не заметил...

Это сообщение отредактировал(а) SelenIT - 2.7.2007, 23:11


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Хоббит
Дата 3.7.2007, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1263
Регистрация: 6.11.2005

Репутация: нет
Всего: 1



Так. Значит надо создать невидимый элемент 1em размером, и определять его размеры в пикселях. Сейчас исполним.
PM MAIL   Вверх
pythonwin
Дата 12.10.2007, 08:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 1
Всего: 36



Цитата(Хоббит @  3.7.2007,  13:45 Найти цитируемый пост)
Так. Значит надо создать невидимый элемент 1em размером, и определять его размеры в пикселях. Сейчас исполним. 


Код

<iframe onresize="alert('1')" id="frame_id" height="1em" style="display:none">
</iframe>

ничего не просходит при Ctrl-±
FF 2.0.x

Добавлено через 9 минут и 53 секунды
Код

<iframe onresize="alert('1')" id="frame_id" style="height:1em; display:none;">
</iframe>

тоже не работает :(

PM WWW GTalk Jabber   Вверх
cruelangel
Дата 12.10.2007, 12:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 319
Регистрация: 12.9.2007

Репутация: 4
Всего: 8



Хоббит, а зачем определять это изменение?
PM MAIL   Вверх
pythonwin
Дата 12.10.2007, 13:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 1
Всего: 36



Цитата(cruelangel @  12.10.2007,  15:59 Найти цитируемый пост)
Хоббит, а зачем определять это изменение? 

1) тема названа неправильно - "изменение маштаба отображения страницы"
2) это нужно чтобы сайт был "резиновым"
PM WWW GTalk Jabber   Вверх
cruelangel
Дата 12.10.2007, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 319
Регистрация: 12.9.2007

Репутация: 4
Всего: 8



width: 100%
max-width
min-width

не спасут отца русской демократии?
PM MAIL   Вверх
pythonwin
Дата 12.10.2007, 15:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 1
Всего: 36



Цитата(cruelangel @  12.10.2007,  16:43 Найти цитируемый пост)
не спасут отца русской демократии? 

к сожелению - нет.
PM WWW GTalk Jabber   Вверх
cruelangel
Дата 12.10.2007, 16:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 319
Регистрация: 12.9.2007

Репутация: 4
Всего: 8



почему?
PM MAIL   Вверх
pythonwin
Дата 12.10.2007, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 1
Всего: 36



Цитата(cruelangel @  12.10.2007,  19:16 Найти цитируемый пост)
почему? 

Код

<html>
<body>
<div id="parent_div_fon" style="position: absolute; left: 271px; top: 138px; min-width: 550px; min-height: 313px"><img src="./images/logo.png" alt=" " width="429" height="156" /></div>

<div id="div_text_ID" style="position: absolute; left: 271px; top: 138px; max-width: 550px; max-height: 313px"
><p>Alice was beginning to get very tired of sitting by her sister on the bank, and of having nothing to do:  once or twice she had peeped into the book her sister was reading, but it had no pictures or conversations in it, 'and what is the use of a book,' thought Alice 'without pictures or conversation?'</p>  <p>So she was considering in her own mind (as well as she could, for the hot day made her feel very sleepy and stupid), whether the pleasure of making a daisy-chain would be worth the trouble of getting up and picking the daisies, when suddenly a White Rabbit with pink eyes ran close by her.</p></div>



<script type="text/javascript">
var rezise_img = function(s1, s2){
var childDivObj = document.getElementById(s1);
var parentDivObj = document.getElementById(s2);
alert(childDivObj.offsetHeight);
parentDivObj.style['height']=childDivObj.offsetHeight;
parentDivObj.style['width']=childDivObj.offsetWidth;

}
setTimeout("rezise_img('" + "div_text_ID" + "', '" + "parent_div_fon" + "')",1);
</script>
</body>
</html>

рисунок - просто синий прямоугольник с загкругленными углами
PM WWW GTalk Jabber   Вверх
cruelangel
Дата 12.10.2007, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 319
Регистрация: 12.9.2007

Репутация: 4
Всего: 8



если ты хочешь сделать фигурную рамку вокруг текста, то для этого скрипты совершенно не нужны smile
http://dark-demon.nm.ru/web/samples/xhtml/....xml#borderskin
PM MAIL   Вверх
pythonwin
Дата 13.10.2007, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 1
Всего: 36



Цитата(cruelangel @  12.10.2007,  22:03 Найти цитируемый пост)
если ты хочешь сделать фигурную рамку вокруг текста, то для этого скрипты совершенно не нужны smile

спасибо за ссылку! smile

а закругленные углы как можно сделать?
PM WWW GTalk Jabber   Вверх
cruelangel
Дата 13.10.2007, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 319
Регистрация: 12.9.2007

Репутация: 4
Всего: 8



картинки поменять smile
http://dark-demon.nm.ru/web/samples/xhtml/pics/
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0835 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.