Окна в Js
Код:
<?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();
?>
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 так что объясните как для чайника.
Код:
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();
}
};
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()'>
спасибки все заработало.
Тут есть еще одна проблема. Она в том, что ни пользователи с отключеным JS, ни роботы поисковых систем не смогут перейти по ссылке [url="java script:open_window'01.htm',350,170);"]01-1[/url] (см.
есть окно(родительское), которое пораждает новое, в коим содержится форма. Данные передаются скрипту на обработку. Он успешно отрабатывает и выдает результат дочернему окну...
А можно ли, сгенирировав результат, обновить родительское окно?
Цитата:
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 onunload='newWin.close()'>
<pre id="data"></pre>
Новое окно
</body>
</html>
<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 onunload='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="Отправить" onclick="sendData();">
</form>
</body>
</html>
<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="Отправить" onclick="sendData();">
</form>
</body>
</html>
Цитата:
Поэтому лучше будет делать так: 01-1
За это оч большое спасибо! поисковая оптимизация это один их главных вопросов при создании сайта!