Re[5]: Yes!!!
От: Дм.Григорьев  
Дата: 02.03.03 16:36
Оценка:
А>Здравствуйте, Bob Kotl, Вы писали:

BK>>Здравствуйте, Аноним, Вы писали:


А>>>Здравствуйте, uzzy, Вы писали:


U>>>> // попробуй так

U>>>> obj = document.getElementByID ("lay1");
U>>>> obj.style.left = newLeft;
U>>>> obj.style.top = newTop;

А>>>Не помогло.

BK>>М-да. И не поможет ...

Вы будете смеяться, но сработало:

obj = document.getElementById ("lay1");  // последняя буква строчная!!!
obj.style.left = newLeft;
obj.style.top = newTop;


А чтобы до этого дойти, была использована следующая функция, уже успел забыть с какого сайта стащил:

function getObjectPropertiesString(obj) {
    var result = "";
    for (var i in obj)
        result += i + " = " + obj[i] + "<br>";
    return result;
}

...
document.write(getObjectPropertiesString(obj));
   // Netscape возвращает: style = [object CSSStyleDeclaration]
   // IE возвращает: style = [object] 
document.write(getObjectPropertiesString(obj.style));
   // свойства left, top присутствуют и у IE, и у Netscape


Всем спасибо за участие!

P.S. Остался вопрос с динамическим изменением размеров области. С помощью описанной выше функции обнаружил в obj.style несколько полей, и ни одно не работает (IE, Netscape даже не пробовал):

obj.style.posRight = obj.style.posLeft + 50;
obj.style.posBottom = obj.style.posTop + 50;
obj.style.right = obj.style.left + 50;
obj.style.bottom = obj.style.top + 50;
obj.style.posWidth = 50;
obj.style.posHeight = 50;
obj.style.width = 50;
obj.style.height = 50;


Похоже, это вообще невозможно Может, кто знает какое колдовство? Кстати, вот цитата из доков от Netscape: "Qnce layout has occurred, setting a property value does not affect its value or appearance." Может тут все дело? Тогда имеется ли возможноть программно заставить его сделать re-layout?
http://dimgel.ru/lib.web — thin, stateless, strictly typed Scala web framework.