Консультация по JS (оплачиваемая)
31 повідомлення
#16 років тому
Написал сценарий создания маленького всплывающего окошка. Проверил у себя (FF, Opera, IE, Safari) - все работает. Хотел показать заказчику - он не видит ни в одном из перечисленных. Посмотреть работу скрипта можно здесь: посилання
Вот код:
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; node.removeChild(child); } // удаление внутренних элементов
var node = document.getElementById("body");
var children = node.childNodes;
for (var i=0; i < children.length; i++) { var child = children;
if (child.id == "container") { node.removeChild(child); } // удаление самого контейнера
}
flag = false; // изменения флага для возможности повторного открытия окна
}
Буду рад любой консультации, с оплатой обговорим лично. Заранее спасибо.
1 повідомлення
#16 років тому
А не стоит ли у заказчика какой-нибудь хитрый блокировщик pop-up окон, или тому подобное?
269 повідомлень
#16 років тому
Цитата ("genbit"):А не стоит ли у заказчика какой-нибудь хитрый блокировщик pop-up окон, или тому подобное?
Во всех браузерах сразу? Я в этом сомневаюсь...
127 повідомлень
#16 років тому
А вы заказчику не сообщили, что окно возникает только после наводки мышки на картинку, а то я тоже не сразу понял. А так работает во всем! Ток в Сафари у меня почемут юникодом!!!
269 повідомлень
#16 років тому
Цитата ("sa_t_an"):А вы заказчику не сообщили, что окно возникает только после наводки мышки на картинку, а то я тоже не сразу понял. А так работает во всем! Ток в Сафари у меня почемут юникодом!!!
Не указана видать кодировка на странице. У себя тоже проверил - даже в Konqueror все нормально. Да и вкоде ошибок вроде нет.
193 повідомлення
#16 років тому
Opera - все супер!IE - окошко есть, но немного кривое...
FF - без блокиратора тоже все замечательно.
Код кажется правильный... С блокиратором даже картинки не видно. Вы все-таки поинтересуйтесь у заказчика насчет блокираторов в браузерах. Может он просто ненавидит окошки) Ну или стоит какой-нибудь Касперского блокиратор, что более вероятно.
626 повідомлень
#16 років тому
Это какой блокиратор добавление слоя на страницу будет зарезать?То, что эта штука выглядит как окошко, окошком ее не делает.
У меня FF+AdBlock Plus - все отлично работает.
193 повідомлення
#16 років тому
Demiurh, я только что переустановил ОС и, соответственно браузеры. В FF По умолчанию стоит блокировка. Я сам удивился, но при заходе на страницу даже картинки видно не было) Вот сначала выключил блокировку - все заработало. Теперь работает даже с включенной.Странно, но факт...
51 повідомлення
#16 років тому
zhmenia, часто за лисой такие глюки замечаю с явой...лично пару раз сталкивался с проблемой когда всен правильно написано на JS, открываешь - косяк, перезапускаешь браузер - все ок и этого глюка больше не видишь!
193 повідомлення
#16 років тому
add-studio, Вспомнил, было такое) Это еще раз подтверждает, что идеального ничего не бывает. Даже браузера

Ну что же, значит все прекрасно работает. Может быть... дело в заказчике? У меня был заказчик, который не захотел принимать работу, потомучто у него в IE не выпадало меню. Он прислал скрин версии, - у меня такая же. Я попросил друзей проверить. Проверили на 7 машинах в этой же версии браузера и, для надежности, в 6 и в 5. Все отлично работало...
Кто его знает? Все может быть... *sorry*