Программирование > JavaScript & JScript
document.write (some) //проблема.
SteelRat:
Доброго времени суток:
Есть страница.
на ней подгружается некая lib.js
По событию onload вызов функции из lib.js:
addMenu_Item(\'Текстик\', \'http://test.org\', 1, 200);
Сама функция:
--- Код: ---
//Добавим хтмл код менюхи:
function addMenu_Item(text,url,sublink,width,height,bg,bga){
var num=oMenu.length; var str="";
str+=\'\\n\';
str+=\'\';
str+=text;
str+=\'\'+\'\\n\';
Make_Item(num,\'-100\',\'-100\',width,height,bg,bga,str);
return str;
}
--- Конец кода ---
Проблема в том, что document.write печатает str как бы в новом окне. Т.е. страница очищается и появляется только то, что есть в str. По идее оно ведь должно добавляться...
В чём дело?
SteelRat:
Точнее:
--- Код: ---
function addMenu_Item(text,url,sublink,width,height,bg,bga){
var num=oMenu.length; var str="";
str+=\'\\n\';
str+=\'\';
str+=text;
str+=\'\'+\'\\n\';
document.write(str)
Make_Item(num,\'-100\',\'-100\',width,height,bg,bga,str);
return str;
}
--- Конец кода ---
Макс:
--- Цитировать ---Т.е. страница очищается и появляется только то, что есть в str. По идее оно ведь должно добавляться...
В чём дело?
--- Конец цитаты ---
Ну конечно, ты же пишешь в document
Создай какой-то слой и в него пиши (правда с межбраузерным DHTML замучаешся). Советую взять klayers или что-то похожее
В klayers это будет выглядеть примерно так:
layer("divMenu1"+num).write(str);
SteelRat:
Я на основе dhtmlcentral пишу.
Кстати, кому нужен скрипт их окошек с комментариями на русском кое где и доводкой кода в паре мет, могу выслать.
Проблема решилась сама выносом точки вызова функции в другое место странички.
SteelRat:
Так ведь чтобы слой создать, надо вписать в документ. Или я не прав?
Навигация
Перейти к полной версии