Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Окна в Js

2.0K
01 августа 2005 года
Yuri Koslow
86 / / 15.03.2004
кот такой
Код:
<?php

function out_js()
{
?>
<script>
function confirmDelete($question, $where) {
        temp = window.confirm($question);
        if (temp) {
                window.location=$where;
        };
};

function open_window(link,w,h) {
                var win = "width="+w+",height="+h+",menubar=no,location=no,resizable=no,scrollbars=yes";
                newWin = window.open(link,'newWin2',win);


        };
</script>
<?php
}
out_js();
?>

[url="java script:open_window'01.htm',350,170);"]01-1[/url]

[url="java script:open_window'01.htm',350,170);"]01-2[/url]

[url="java script:open_window'01.htm',350,170);"]01-3[/url]


[url="java script:open_windo('02.htm',350,170);"]02-1[/url]

[url="java script:open_window('02.htm',350,170);"]02-2[/url]

[url="java script:open_window('02.htm',350,170);"]02-3[/url]



проблема в том что мне нужно передавать фокус на дочернее окно при нажатии на ссылку.
зы: я в JS 0 так что объясните как для чайника.
832
01 августа 2005 года
Carpus
390 / / 14.04.2005
А чего тут объяснять - фокус передает метод focus() :-) Только мне кажется, что незачем каждый раз открывать окно, достаточно изменить свойство href.

 
Код:
function open_window(link,w,h) {
  if (!newWin || newWin.closed) {
    var win = "width="+w+",height="+h+" menubar=no,location=no,resizable=no,scrollbars=yes";
    newWin = window.open(link,'',win);
  } else {
    newWin.location.href=link;
    newWin.focus();
  }
};


А после закрытия родительского окна наверное стоит закрыть и окно newWin

<body onunload='newWin.close()'>
2.0K
02 августа 2005 года
Yuri Koslow
86 / / 15.03.2004
спасибки все заработало.
832
02 августа 2005 года
Carpus
390 / / 14.04.2005
Тут есть еще одна проблема. Она в том, что ни пользователи с отключеным JS, ни роботы поисковых систем не смогут перейти по ссылке [url="java script:open_window'01.htm',350,170);"]01-1[/url] (см. "Вредные советы" от Яндекса ч.2).

Поэтому лучше будет делать так: 01-1
410
02 августа 2005 года
Tavix
70 / / 20.05.2000
А если такая ситуация:
есть окно(родительское), которое пораждает новое, в коим содержится форма. Данные передаются скрипту на обработку. Он успешно отрабатывает и выдает результат дочернему окну...
А можно ли, сгенирировав результат, обновить родительское окно?
832
02 августа 2005 года
Carpus
390 / / 14.04.2005
Цитата:
Originally posted by Tavix
А если такая ситуация:
есть окно(родительское), которое пораждает новое, в коим содержится форма. Данные передаются скрипту на обработку. Он успешно отрабатывает и выдает результат дочернему окну...



Ссылка на родительское окно содержиться в свойстве opener, т.е. если необходимо обратиться к элементу с id=”data” это бует выглядеть так: opener.document.getElementByID(‘data’).

Цитата:

А можно ли, сгенирировав результат, обновить родительское окно?



Вот вариант с innerHTML:

Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script type="text/javascript">
var newWin;

function open_window(link,w,h) {
  if (!newWin || newWin.closed) {
    var win = "width="+w+",height="+h+" menubar=no,location=no,resizable=no,scrollbars=yes";
    newWin = window.open(link,'',win);
  } else {
    newWin.location.href=link;
  }
    newWin.focus();
};
</script>
</head>

<body &#111;&#110;unload='newWin.close()'>

<pre id="data"></pre>

Новое окно
</body>

</html>


файл new.html

Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script type="text/javascript">
function sendData() {
  opener.document.getElementById("data").innerHTML = document.forms['f1'].name.value;
  window.close();
};
</script>
</head>

<body>

<form id="f1">
<input id="name" type="text" size="20">
<input type="submit" value="Отправить" &#111;&#110;click="sendData();">
</form>

</body>
</html>
2.0K
03 августа 2005 года
Yuri Koslow
86 / / 15.03.2004
Цитата:
Поэтому лучше будет делать так: 01-1



За это оч большое спасибо! поисковая оптимизация это один их главных вопросов при создании сайта!

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог