Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » В помощь вебмастеру » FAQ по созданию всплывающих и диалоговых окон (pop-up/popup)

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Открыть новую тему     Написать ответ в эту тему

Svarga

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
обзор форума » (клиентские скрипты » JavaScript) »  FAQ по окнам / Новые вопросы по окнам

 
Новые вопросы по браузерным окнам
По всплывающим (pop-up) окнам, а также модальным (диалоговым) окнам

 
В связи с тем, что "шапка" данной темы значительно разрослась, она была вынесена в отдельную закрытую тему.
 

 
Новые вопросы, заданные в этой теме и полученные на них ответы будут также добавляться в FAQ по окнам
 
Svarga.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 13:03 09-07-2003 | Исправлено: Svarga, 03:54 28-06-2004
vs6262



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
pacnik

Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link href="abcde.css" rel="stylesheet">
 
 
 
</head>
 
<body>
 
 
<style type="text/css">
.PopUp {
  position:absolute;
  -webkit-border-radius: 7;
  -moz-border-radius: 7;
  border-radius: 7px;
  font-family: Arial;
  color: #000000;
  font-size: 14px;
  background: #f5e8ce;
  padding: 0px 0px 0px 0px;
  text-decoration: none;
  width:250px;
  height:150px;
  margin-top:-75px;
  margin-left:-125px;
  top: 50%;
  left:50%;
  z-index:100;
}
 
.PopUp-H {
  position:relative;
  -webkit-border-radius: 4;
  -moz-border-radius: 4;
  border-radius: 4px;
  font-family: Arial;
  color: #ffffff;
  font-size: 14px;
  font-weight:bold;
  background: #ff0000;
  padding: 0px 0px 0px 0px;
  text-decoration: none;
  left:8px;
  top:8px;
  width:234px;
  height:20px;
  padding-top:2px;
  z-index:100;
/*  text-decoration: blink; */
}
 
.PopUp-I {
  position:relative;
  -webkit-border-radius: 4;
  -moz-border-radius: 4;
  border-radius: 4px;
  font-family: Arial;
  color: #000000;
  font-size: 14px;
  font-weight:normal;
  background: transparent;
  padding: 0px 0px 0px 0px;
  text-decoration: none;
  left:8px;
  top:8px;
  width:234px;
  height:20px;
  padding-bottom:2px;
  padding-top:2px;
  padding-left:2px;
  padding-right:2px;
  z-index:100;
  text-align:center; /* horizontal centering for IE Win quirks */
}
 
.PopUp-B-Close {
  position:relative;
  -webkit-border-radius: 4;
  -moz-border-radius: 4;
  border-radius: 4px;
  font-family: Arial;
  color: #ffffff;
  font-size: 14px;
  font-weight:normal;
  background: #3498db;
  padding: 0px 0px 0px 0px;
  text-decoration: none;
  left:0px;
  top:74px;
  width:60px;
  height:20px;
  padding-top:2px;
  padding-left:0px;
  z-index:100;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
 
.PopUp-B-Close:hover {
  background: #3cb0fd;
  text-decoration: none;
  cursor:pointer;
}
</style>
</head>
<body>
 
<script>
//Default lib functions
function lib_create_obj_0007(_obj_typ,_id,_id_parent){
    var obj;
    if(document.createElement&&(obj=document.createElement(_obj_typ))){
        obj.className=_id;
        obj.id=obj.name=_id;
        if("body"==_id_parent.toLowerCase()){
            document.body.appendChild(obj);
            obj.posArray=new Object();
        }
        else{document.getElementById(_id_parent).appendChild(obj);}
    }
    return obj;
}
 
function _alert(_head,_text,_buttontext){
    lib_create_obj_0007("div","PopUp","body");
    lib_create_obj_0007("div","PopUp-H","PopUp");
    lib_create_obj_0007("div","PopUp-I","PopUp");
    lib_create_obj_0007("center","Center-H","PopUp-H");
    var _close=lib_create_obj_0007("div","PopUp-B-Close","PopUp");
    lib_create_obj_0007("center","Center-B-Close","PopUp-B-Close");
    document.getElementById("Center-H").innerHTML=_head;
    document.getElementById("PopUp-I").innerHTML=_text;
    document.getElementById("Center-B-Close").innerHTML=_buttontext;
    _close.onmousedown=function(event){eval("_alert_close();");}
    
}
 
// lib close
function lib_close_0007(_id){
    if(null!=document.getElementById(_id)){document.getElementById(_id).parentNode.removeChild(document.getElementById(_id));}
}// lib close End
 
function _alert_close(){
    lib_close_0007("Center-B-Close");
    lib_close_0007("Center-H");
    lib_close_0007("PopUp-I");
    lib_close_0007("PopUp-H");
    lib_close_0007("PopUp");
}
 
_alert("Error","Привет зелёненький. Hi Kamrad. Hanska. Andreas. usw.","OK");
</script>
 
 
 
 
 
<!--
<div class="PopUp"><div class="PopUp-H"><center>Error</center></div><div class="PopUp-I">
<p>Привет зелёненький.</p>
</div></div>
-->
 
 
 
 
 
 
</body>
</html>

Всего записей: 2188 | Зарегистр. 25-02-2013 | Отправлено: 19:07 31-10-2014
slonim



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нужен скрипт голосования c оценкой 10-ти позиций в баллах, от 1 до 10

Всего записей: 183 | Зарегистр. 23-02-2006 | Отправлено: 19:10 23-09-2015
GeRUb



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго дня специалистам!
Столкнулся с такой проблемой, не работает моя функция.
Часть кода страницы:

Код:
 
<html>
<head>
......
<script language="JavaScript">
function btnHead_clik()
{
var descript_err;
.................
</script>
<SCRIPT language="JavaScript">
function rdo_open()
{
window.open("rdo_relax.html", "_blank", "......");
}
</SCRIPT>
</head>
......................
<BODY>
<SCRIPT TYPE="text/javascript" SRC="mymenu.js"></SCRIPT>
</BODY>
</html>
 

 
 
Скрипт SRC="mymenu" - содержит меню с кнопками. При нажатии на одну из них
должна выполниться функция "rdo_open".
Вместо этого ничего не происходит и получаю ошибку:
Uncaught ReferenceError: rdo_open is not defined(anonymous function)
Вторая функция (которая выше) btnHead_clik - работает нормально с соседней кнопки.
 
Блок со скриптом пробовал разместить в других местах на этой странице, результат одинаковый, т.е. никакой .
Помогите понять, где , что не так.

Всего записей: 233 | Зарегистр. 08-02-2009 | Отправлено: 12:27 14-01-2020 | Исправлено: GeRUb, 12:30 14-01-2020
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GeRUb
лучше давать ссылку на страницу

Цитата:
Вместо этого ничего не происходит и получаю ошибку:
Uncaught ReferenceError: rdo_open is not defined(anonymous function)

показывайте где и как идет вызов.

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 13:34 14-01-2020
GeRUb



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
На кнопке в меню onclick=javascript:rdo_open()
Аналогично на другой кнопке (рядом) onclick=javascript:btnHead_clik()
Локально, на компе, запускаю страницу и все работает. Переношу на сервер и btnHead_clik()- работает, а rdo_open() - НЕТ.
Смотрю в хроме ошибки и там вижу Uncaught ReferenceError: rdo_open is not defined(anonymous function).
Приведенный код - это вся страница с сокращениями, не имеющими значения в данном случае. Само меню с кнопками находится в файле mymenu.js

Всего записей: 233 | Зарегистр. 08-02-2009 | Отправлено: 17:21 14-01-2020
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GeRUb

Цитата:
Переношу на сервер

дайте ссылку. раз локально работает, а на сервере нет, то проблема явно не совсем в коде.

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 17:46 14-01-2020
GeRUb



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
geosoftua.od.ua
меню "Отдохни..." - "Онлайн радио"

Всего записей: 233 | Зарегистр. 08-02-2009 | Отправлено: 17:51 14-01-2020
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GeRUb
у меня все нормально. ctrl+f5 жали? может браузер использует закэшированную старую версию страницы.

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 17:53 14-01-2020
GeRUb



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да. и неоднократно.
У вас какой браузер?

Всего записей: 233 | Зарегистр. 08-02-2009 | Отправлено: 17:55 14-01-2020
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GeRUb

Цитата:
У вас какой браузер?

Хром
а, сорри, щелкнул справа, а не в меню. щас

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 17:56 14-01-2020 | Исправлено: Mavrikii, 17:57 14-01-2020
GeRUb



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
И нет ошибки? И окно всплывает?
Оч странно. Я проверяю на разных компах и в хроме и в опере. Результат одинаковый.
Да и версии хромов разные.....
Вот засада. Не пойму, где собака порылась....

Всего записей: 233 | Зарегистр. 08-02-2009 | Отправлено: 17:59 14-01-2020
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GeRUb
Как же у вас коряво все сделано, зачем тут iframe? Ваш код определен в одном iframe окне, а вызывать его пытаесь из другого iframe, поэтому нужно его скопировать в тот же iframe, где и вызываете. или в родительское окно, и вызывать как parent.rdo_open(). или как parent.frames['имя_фрейма'].rdo_open() (не проверял)  
void(0) там вообще не нужен.

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 18:02 14-01-2020 | Исправлено: Mavrikii, 18:08 14-01-2020
GeRUb



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Как же у вас коряво все сделано, зачем тут iframe?  

Так исторически сложилось . Я в web програминге около 0 (т.е. , может +0,5 ).
"Я его слепила из того, что было". Работает, как есть, а переделывать уже облом.
 

Цитата:
код определен в одном iframe окне, а вызывать его пытаесь из другого iframe

Так это все в одном окне, а это окно в фрейме. Или не так?

Цитата:
void(0)  

Вообще нигде нету. Это подставляет уже браузер.
Щас проверю parent.frames.
 
 
 
Добавлено:
To Mavrikii
Ураааа!!!
С parent.frames заработало как надо!
Огромное спасибо за подсказку!
Никогда-бы не догадался  сам т.к. соседняя функция, которая рулит этим фреймом - работала.

Всего записей: 233 | Зарегистр. 08-02-2009 | Отправлено: 20:26 14-01-2020 | Исправлено: GeRUb, 20:53 14-01-2020
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Компьютерный форум Ru.Board » Интернет » В помощь вебмастеру » FAQ по созданию всплывающих и диалоговых окон (pop-up/popup)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru