Показать сообщение отдельно
  #1 (permalink)  
Старый 17.04.2012, 20:36
Интересующийся
Отправить личное сообщение для eXTrEMe888 Посмотреть профиль Найти все сообщения от eXTrEMe888
 
Регистрация: 17.04.2012
Сообщений: 14

Поиск самого крупного шрифта на странице
Доброе времени суток всем посетителям форума
Собственно, вот с какой задачей я столкнулся: нужно написать программу на языке JavaScript выполняющую следующее преобразование HTML-документа: найти на странице текст написанный самым крупным шрифтом и сделать его размером 14 px.
Так вот, как человек мало знакомый с JS, покопался я немного в Интернете, почитал учебник на этом сайте и нашел некий пример, где сначала создаются классы в CSS, а затем мы сами динамически управляем стилями. Насколько я понял, моя задача имеет что-то похожее с этим делом...Вот что я придумал и немного изменил из имеющегося примера:
<style type="text/css">
    .class1{
        font-size: 48px;
        font-weight: bolder;
    }
    .class2{
        font-size: 14px;
        font-weight: normal;
    }
</style>
 
<script type="text/javascript" language="javascript">
    function doBlinkClass()
    {
        var elm = document.getElementById("styler_class");
        if(elm)
        {
            if(elm.className == "class1")
                elm.className = "class2";
            else
                elm.className = "class1";
        }
        
    }
     window.setInterval("doBlinkClass();", 1000);
</script>
 
/* В элемент body добавим соответствующий тег с текстом: */
 
<span class="class1" id="styler_class">Тестовая строка</span>

НО! Здесь мы стили и размер шрифта задали сразу. А скрипт по идее должен сам находить его на странице (текст с самым крупным размером шрифта) и менять на 14px. При чем задачу осложняет то, что это может быть текст, заключенный в какой-угодно тег (то ли это будет заголовок <h1>, то ли параметры шрифта пропишутся в <font>, то ли вообще зададутся в каком-то левом классе и загонятся в <div>). Вот, собственно, и вся моя проблема. Очень хотелось бы услышать от Вас доступный новичку ответ и решение этой задачи как можно легче и проще. ОГРОМНЕЙШЕЕ Вам СПАСИБО за ранее!
Ответить с цитированием