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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
MSY



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Если через <body>, открывшееся окно будет мешать полноценно работать с другими окнами... Хотелось бы этого избежать... Нужно чтобы окошко постоянно висело поверх окон, но не обязательно было активно...

Всего записей: 83 | Зарегистр. 23-01-2003 | Отправлено: 15:08 03-04-2004
vladmir

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

Цитата:
1. Открытие нового окна на весь экран:  
   a) человеческий способ:

Попробовал этот способ - работает криво: правая граница окна выходит за экран на 12 пикселей, а нижняя уходит под панель примерно на 30 пикселей. При способе

Цитата:
б) для жителей планеты Извр

окно разворачивается не так красиво, но зато границы окна встают точно со всех сторон.
Svarga может можно как-то совместить, чтобы и красиво и на место?
==
Пока предпочту Извр
{
  if (window.screen) {
    var aw =+screen.availWidth+;
    var ah =+screen.availHeight+;
    window.moveTo(0, 0);
    window.resizeTo(aw, ah);
}
}

Всего записей: 2232 | Зарегистр. 22-01-2003 | Отправлено: 11:44 19-04-2004
samlowry

Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Классный FAQ, добавлю вопросик: а как бороться с известными попапорезалками? (п овозможности), ну, не с теми, которые просто убирают ф-цию открытия окон на корню, как Opera, а с другими, которые подобрее.

Всего записей: 15 | Зарегистр. 15-04-2004 | Отправлено: 21:17 23-05-2004
Svarga

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

Цитата:
а как бороться с известными попапорезалками? (п овозможности), ну, не с теми, которые просто убирают ф-цию открытия окон на корню, как Opera, а с другими, которые подобрее.

с теми, которые window.open вырезают из скриптов?

Цитата:
var w='win'+'dow.o'+'pen'
eval(w+'("","","width=20,height=30")')

т. е. просто избегаем упоминания в коде window.open...

----------
away.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 05:41 24-05-2004
DimSUN



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Svarga
В ФАКе не ошибка ли?
-------
Цитата:Как сделать новое окно заданного размера?(то же самое здесь и здесь)  
 
!  Код для открытия окна:
Код:<script>  
function win(){window.open("somebody.html","","width=450,height=350")}  
</script>  
 
И ссылка, при нажатии на которую окно откроется:  
 
Код:<a href="void win()">link</a>  
---
Почему название функции в head - win, а в самой ссылке идёт void win ?
 
 
Добавлено
Вот почитал я на этом Форуме все ветки про JavaScript попапы, всё так гладенько, решаемо, без проблем. А как быть с совместимостью с другими броузерами?
Вот грабля, которую пару дней назад выловил на своём сайте при просмотре через MyIE2: http://www.dimsun.ru/tvdesign.shtml
Пошёл к потенциальному заказчику предлагать услуги, полезли ко мне на сайт и ....такой косяк получился - отказался работать аргумент resize для окон фиксированного размера и всё, что должно было открываться в окнах фиксированного размера открывалось как попало или во весь экран. Стыдно было. Позже я попробовал это посмотреть на AvantBrouser (тоже на движке MSIE) и получил тот же самый результат, но там криво отрабатывался только height


Выношу сюда код попапов (немного упрощённый):

Код:
function TvdPop(url){
window.open("portfolio/tvd/"+url+".htm","tvd1","left="20",top="20",width=466,height=283");
}

 
и сама кнопка:

Код:
<a href="javascript:TvdPop('pioneer/01')"><img src="images/anons/tvd_left_01.gif" width="200" height="56" border="0"></a>



Чисто ради опытов, скачал поставил и себе MyIE и полазил им по чужим сайтам, которые всегда открывались нормально в MSIE. Как и оказалось, результат был тоже кривым. Неужели ничего нельзя сделать?

Всего записей: 206 | Зарегистр. 10-04-2003 | Отправлено: 18:33 01-08-2004 | Исправлено: DimSUN, 19:42 01-08-2004
Cheery



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

Цитата:
Почему название функции в head - win, а в самой ссылке идёт void win ?  

потому что для начала нужно хотя бы немного знать программирование. void означает, что фукнция ничего не возвращает..  

Цитата:
Чисто ради опытов, скачал поставил и себе MyIE и полазил им по чужим сайтам, которые всегда открывались нормально в MSIE. Как и оказалось, результат был тоже кривым. Неужели ничего нельзя сделать?

результат не может быть иным, так как MyIE использует IE как движок

Цитата:
Вот грабля, которую пару дней назад выловил на своём сайте при просмотре через MyIE2

все ок.. просто учитывай то, как написана прога MyIE. в старых версиях новое окно открывается на весь экран. Это убирается в настройках программы. Либо поставь последнюю версию - Maxthon - там открывается довольно удобно.  
А вообще - обсуждение MyIE в соответствующем топике в разделе программы
http://forum.ru-board.com/topic.cgi?forum=5&topic=11320&start=1480#lt
если ты не понимаешь, как это работает, то зачем утверждать, что все неправильно?

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:57 01-08-2004
DimSUN



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

Цитата:
потому что для начала нужно хотя бы немного знать программирование

логично, но не могут же все быть программистами
Не поверишь, но за год с лишним работы с попапами и изучения чужих кодов, я впервые увидел этот void именно тут. Гхм... видимо не программисты пишут коды
----

Цитата:
результат не может быть иным, так как MyIE использует IE как движок  

Весьма спорное утверждение. AvantBrouser тоже является надстройкой над IE, а корёжит всё так, что не дай бох...

Всего записей: 206 | Зарегистр. 10-04-2003 | Отправлено: 11:38 02-08-2004
Cheery



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

Цитата:
Весьма спорное утверждение. AvantBrouser тоже является надстройкой над IE, а корёжит всё так, что не дай бох...

да никто не корежит.. ну зайди в настройки и отметь, что хочешь иметь попапы не на все окно.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 16:26 02-08-2004
Svarga

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

Цитата:
 А как быть с совместимостью с другими броузерами?  
Вот грабля, которую пару дней назад выловил на своём сайте при просмотре через MyIE2: http://www.dimsun.ru/tvdesign.shtml  

MyIE с окнами не дружит изначально... Тут всё на совести его китайских разработчиков и сделать с этим инчего нельзя (кроме рекомендаций не использовать его в качестве браузера).
 
 
Добавлено

Цитата:
Код:<a href="void win()">link</a>    
---  
Почему название функции в head - win, а в самой ссылке идёт void win ?

void для того, чтобы избежать перехода к верху страницы при нажатии на ссылку

----------
away.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 21:04 02-08-2004
DimSUN



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Благодарю за разъяснение

Всего записей: 206 | Зарегистр. 10-04-2003 | Отправлено: 17:15 07-08-2004
xntx



хнотик-багоискатель
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
люди, скажите, ну какого черта вот тут: http://www.lambroso.com/logo.htm в браузерах отличных от IE не открывается новое окно при клике на "Editar"???

----------
Hello world!

Всего записей: 5169 | Зарегистр. 15-02-2003 | Отправлено: 20:47 26-08-2004
Cheery



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

Цитата:
люди, скажите, ну какого черта вот тут


Цитата:
openColorEdit('face');

где face?

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:50 26-08-2004
xntx



хнотик-багоискатель
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Cheery

Код:
function openColorEdit(id)
{  
var url = 'colorpicker.aspx?id='+id+'&color='+document.getElementById(id).value
window.open(url,'',"toolbar=no,width=600,height=430,status=no,scrollbars=no,resize=no,menubar=no")  
}  

face тож есть:

Код:
<input type="hidden" name="face" value="B9DAFF">



----------
Hello world!

Всего записей: 5169 | Зарегистр. 15-02-2003 | Отправлено: 00:55 27-08-2004
Cheery



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

Цитата:
name="face"

id="name"

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 01:12 27-08-2004
xntx



хнотик-багоискатель
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Cheery
сенкс, незаметил.

----------
Hello world!

Всего записей: 5169 | Зарегистр. 15-02-2003 | Отправлено: 03:41 27-08-2004
WRFan



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вы может думали, после инсталляции sp2 ИЕ теперь блокирует все попапы? не тут то было:
 

Код:
 
<HTML>
<HEAD>
<TITLE>Popup Example</TITLE>
 
<SCRIPT LANGUAGE="JScript">
var oPopup = window.createPopup();
function ButtonClick()
{
    var oPopBody = oPopup.document.body;
    oPopBody.style.backgroundColor = "lightyellow";
    oPopBody.style.border = "solid black 1px";
    oPopBody.innerHTML = "<CENTER>Internet Explorer with enabled popup blocker cannot close me! <P>LOL. <P> I am a naughty popup and I AM HERE TO STAY!</CENTER>";
    oPopup.show(200, 200, 280, 170, document.body);
}
</SCRIPT>
</HEAD>
 
<BODY>
 
<CENTER><BUTTON onclick="ButtonClick()">Phuck Me!</BUTTON></CENTER>
</BODY>
</HTML>
 

 
хехехе

Всего записей: 5275 | Зарегистр. 25-11-2002 | Отправлено: 06:34 31-08-2004
ada

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, пожалуйста, как сделать? Код ниже. Хочется чтобы при выводе картинке small_image.jpg, текст который идет дальше, выводился рядом с картинкой, а не внизу?
Должно получится вот так
I--------I-------------------------I            И если вдруг окажется, что текста в каждой  
I           I text                            I             ячейке больше, чем высота картинки, чтобы  
I image  I  text                            I             текст огибал картинку. Такое возможно?  
I--------I  text                           I             Большое спасибо
I text                                        I
I text                                       I
I-------------------------I--------I
I text                            I           I
I                                  I image   I
I                                  I            I  
I                                  I--------I
I                                               I
I--------I-------------------------I
I image   I  text                           I
I           I                                   I
I           I                                   I  
I--------I-------------------------I
 
 
 

Код:
<table border=1 width=600 cellpadding=0 cellspacing=0>
<tr>
    <td>
<script language="javascript"><!--
      document.write('<a href="javascript:popupWindow(\'/1.html\')"><img src="/small_image.jpg" border="0" alt="" title="" hspace="5" vspace="5"></a>');
//--></script>
<noscript>
      <a href="/big_image.jpg"><img src="/small_image.jpg" border="0" alt="" title="" hspace="5" vspace="5"></a></noscript>
 
вот здесь идет текст. Можно ли его выводить рядом с картинкой, при вкл обработке яваскрипта и при отключенной.
    </td>
</tr>
</table>

Всего записей: 41 | Зарегистр. 13-02-2003 | Отправлено: 12:42 17-10-2004 | Исправлено: ada, 13:52 17-10-2004
Anwy



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Как сдела сворачивание окна.
И ещё разворачивание, что бы когда на кнопку нажимаеш оно разворачивалось, а когда нажимаеш второй раз то оно возвращялось в исходноне положение с исходным размером?

Всего записей: 97 | Зарегистр. 23-08-2004 | Отправлено: 00:05 25-10-2004
Svarga

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

Цитата:
Как сдела сворачивание окна.  
И ещё разворачивание, что бы когда на кнопку нажимаеш оно разворачивалось, а когда нажимаеш второй раз то оно возвращялось в исходноне положение с исходным размером?

В каком окне кнопки?
Для сворачивания текущего в нём, а для разворачивания в родительском?
Или о чём речь?
 
ada

Цитата:
вот здесь идет текст. Можно ли его выводить рядом с картинкой, при вкл обработке яваскрипта и при отключенной.

атрибут к картинке align=left или right или же CSS-стиль для картинки float:left или right
 
Только при чём тут окна?
 
WRFan

Цитата:
вы может думали, после инсталляции sp2 ИЕ теперь блокирует все попапы? не тут то было:

Цитата:
createPopup

Так же можно было бы что-то написать о createModalDialog/createModelessDialog
Под всплывающими окнами подразумевают, всё-таки, только открытые при помощи window.open


----------
away.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 00:57 25-10-2004
Anwy



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Svarga
Все кнопки в одном и том же окне, над ккоторым и производятся эти действия.

Всего записей: 97 | Зарегистр. 23-08-2004 | Отправлено: 20:33 26-10-2004
Открыть новую тему     Написать ответ в эту тему

Страницы: 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