Показать сообщение отдельно
  #1 (permalink)  
Старый 25.08.2010, 09:52
Интересующийся
Отправить личное сообщение для Aspiring Посмотреть профиль Найти все сообщения от Aspiring
 
Регистрация: 23.08.2010
Сообщений: 27

Линии "чистым" JS
Здравствуйте

Совсем недавно начал изучать JS. Статьи, описанные на сайте, очень хорошо изложенные и хотелось бы поблагодарить автора за них.

Сейчас дошел до раздела События. Решил, что одно чтение слишком сухо - надо сделать простейший JS приложение... крестики-нолики

С самого начала встретился с проблемой как нарисовать линии только с помощью JS. Нашел такой код:
Код:
function drawLine( lineObjectHandle, Ax, Ay, Bx, By, lineImgPath )
{
    /*
     *	lineObjectHandle = an IMG tag with position:absolute
     */
    var
        xMin        = Math.min( Ax, Bx ),
        yMin        = Math.min( Ay, By ),
        xMax        = Math.max( Ax, Bx ),
        yMax        = Math.max( Ay, By ),
        boxWidth    = Math.max( xMax-xMin, 1 ),
        boxHeight   = Math.max( yMax-yMin, 1 ),
        tmp         = Math.min( boxWidth, boxHeight ),
        smallEdge   = 1,
        newSrc;


    while( tmp>>=1 )
        smallEdge<<=1;

    newSrc = lineImgPath+ smallEdge +( (Bx-Ax)*(By-Ay)<0?"up.gif":"down.gif" );
    if( lineObjectHandle.src.indexOf( newSrc )==-1 )
        lineObjectHandle.src = newSrc;

    with( lineObjectHandle.style )
    {
        width   = boxWidth	+"px";
        height  = boxHeight	+"px";
        left    = xMin		+"px";
        top     = yMin		+"px";
    }
}
Как использовать этот код?

Как я понял надо подставить задать Ax, Ay, Bx, By необходимые значения.

Вначале кода написал
Код:
lineObjectHandle = "up.gif"
lineObjectHandle.position='absolute'
Чувствую, что совсем в лес ушел. Буду рад обьяснениям и указанию моих ошибок
Ответить с цитированием