Javascript.RU

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

"Всплывающее" окошко
Написал сценарий создания маленького всплывающего окошка. Проверил у себя (FF, Opera, IE, Safari) - все работает. Хотел показать заказчику - он не видит ни в одном из перечисленных.

Посмотреть работу скрипта можно здесь: http://t1gor.ru/test/

Код:

var flag = false; // флаг показывает создано ли окно

function createWindow() { // создает окно если флаг false
if (!flag) {
var body = document.getElementById("body");
var window = document.createElement("div");
window.id = "container";
body.appendChild(window);
formatWindow();
};
flag = true;
}

function formatWindow() { // форматирование созданного окна
var a = document.getElementById("container");
var bar = document.createElement("div");
bar.id = "titleBar";
a.appendChild(bar);
bar.innerHTML += "<img src='title_bar_left.png' alt='' style='position: relative; float: left;' /><span id='title'>Tilte</span><img src='close_button.png' alt='закрыть' id='closeButton' onClick='closeWindow()' />";
a.innerHTML += "<center><img src='110_shl.jpg' alt='110 shl' style='border: solid #000 1px; margin-top: 20px;' /></center>";
a.innerHTML += "<p id='text' align='center' style='margin-bottom: 10px;' >Информация о модели. Информация о модели. Информация о модели. Информация о модели. Информация о модели. Информация о модели. Информация о модели. Информация о модели. Информация о модели. Информация о модели. </p>";
}

function closeWindow() { // уничтожение окна
var node = document.getElementById("container");
var children = node.childNodes;
for (var i=0; i < children.length; ) { var child = children[i]; node.removeChild(child); } // удаление внутренних элементов
var node = document.getElementById("body");
var children = node.childNodes;
for (var i=0; i < children.length; i++) { var child = children[i];
if (child.id == "container") { node.removeChild(child); } // удаление самого контейнера
}
flag = false; // изменения флага для возможности повторного открытия окна
}


Буду рад помощи, если все получится исправить - оплачу консультацию.
Заранее спасибо, Игорь
Ответить с цитированием
  #2 (permalink)  
Старый 16.10.2008, 14:12
...
Отправить личное сообщение для Zibba Посмотреть профиль Найти все сообщения от Zibba
 
Регистрация: 13.10.2008
Сообщений: 225

Хммм, а у заказчика то JavaScript в браузерах хоть включен? O_o
Ответить с цитированием
  #3 (permalink)  
Старый 16.10.2008, 14:35
Отправить личное сообщение для Андрей Параничев Посмотреть профиль Найти все сообщения от Андрей Параничев
 
Регистрация: 21.02.2008
Сообщений: 1,250

Не загружается картинка 110_shl.jpg, соответственно не над чем сделать mouseover, для открытия окошка. Стили тоже не грузятся.

Последний раз редактировалось Андрей Параничев, 16.10.2008 в 14:38.
Ответить с цитированием
  #4 (permalink)  
Старый 16.10.2008, 14:47
...
Отправить личное сообщение для Zibba Посмотреть профиль Найти все сообщения от Zibba
 
Регистрация: 13.10.2008
Сообщений: 225

Хмм, а у меня в Opera и FF отработало.
При первой загрузке Opera'ой правда не загрузился сам скрипт, после попробовал FF все отработало, запустил еще раз в опере и о чудо тоже отработало.
Ответить с цитированием
  #5 (permalink)  
Старый 17.10.2008, 12:45
Новичок на форуме
Отправить личное сообщение для t1gor Посмотреть профиль Найти все сообщения от t1gor
 
Регистрация: 16.10.2008
Сообщений: 8

Сообщение от Zibba Посмотреть сообщение
Хммм, а у заказчика то JavaScript в браузерах хоть включен? O_o
- да, включен, специально спрашивал.

Видимо проблема в разных версиях браузеров. Если кто-нибудь знает как выровнять, очень прошу помочь. Повторюсь, наверно, но консультацию оплачу
Ответить с цитированием
  #6 (permalink)  
Старый 18.10.2008, 11:23
-
Отправить личное сообщение для twolf Посмотреть профиль Найти все сообщения от twolf
 
Регистрация: 16.07.2008
Сообщений: 207

у меня Admuncher рубит. В нем есть фильтр банить
Код:
/test/popup.
и в IE и в FF без мунчера показывается все нормально.
Думаю проблема решится
Ответить с цитированием
  #7 (permalink)  
Старый 18.10.2008, 14:21
Новичок на форуме
Отправить личное сообщение для t1gor Посмотреть профиль Найти все сообщения от t1gor
 
Регистрация: 16.10.2008
Сообщений: 8

Спасибо, с окошком вроде разобрался теперь возник еще вопрос:

Как корректно для всех браузеров задатт положение и размер этого окна?

var obj = document.getElementById("container");
     obj.style.top = "100px;";
     obj.style.left = "100px;";


Работает только в FF и Opera. Как получить такой же эффект в IE, Safari и NN?

Еще раз заранее спасибо!
Ответить с цитированием
  #8 (permalink)  
Старый 18.10.2008, 14:49
...
Отправить личное сообщение для Zibba Посмотреть профиль Найти все сообщения от Zibba
 
Регистрация: 13.10.2008
Сообщений: 225

// размеры окна
obj.style.width = "100px";
obj.style.height = "100px";
				
// положение
obj.style.position = "absolute"
obj.style.top = "100px";
obj.style.left = "100px";


Должно работать во всех браузерах, если указываете абсолютное позиционирование, то положение будет задаваться от левого верхнего угла браузера. Если указываете "relative", то положение будет относительно родителя.
Ответить с цитированием
  #9 (permalink)  
Старый 18.10.2008, 15:40
Новичок на форуме
Отправить личное сообщение для t1gor Посмотреть профиль Найти все сообщения от t1gor
 
Регистрация: 16.10.2008
Сообщений: 8

Спасибо, буду пробовать еще
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать окошко с возможностью изменения его содержимого? nolka Элементы интерфейса 2 10.07.2008 08:22
Всплывающее окошко, как подсказка при наведении на кнопку. rastafaray Общие вопросы Javascript 4 24.05.2008 00:55
добавление окошка в скрипт подсчета слов Гость Общие вопросы Javascript 10 11.03.2008 17:07