Определить родительскую кнопку с помощью JavaScript - PullRequest
0 голосов
/ 26 августа 2010

У меня есть страница с двумя кнопками, одна кнопка открывает всплывающее окно со следующей функцией:

function MM_openBrWindow(theURL,winName,features) { //v2.0
  my_window=window.open(theURL,winName,features);
}

и мне нужно определить из этого окна (my_window), когда вторая кнопка на родительской страниценажата и выдает предупреждение.

Как я могу это сделать?

Заранее спасибо.

Карлос

Ответы [ 2 ]

0 голосов
/ 26 августа 2010

Вы должны поместить код в дочернее окно, используя window.opener, например:

function registerWithParent() {
    window.opener.registerCallback(myCallback);
}

Вы можете вызвать, чем при событии onload тела.

<body onload="registerWithParent()">

Тогда у вас естьКод JS в родительском окне выглядит следующим образом:

var theCallback;
function registerCallback(fn) {
    theCallback = fn;
}

Тогда ваш HTML в родительском окне будет выглядеть так:

<input type="button" onclick="theCallback()" value="The 2nd button">
0 голосов
/ 26 августа 2010

Вы бы сделали my_window.alert("hey") в событии щелчка для второй кнопки в родительском окне.Если вы хотите получить доступ к родительскому окну из дочернего окна (например, чтобы добавить событие), используйте window.opener в дочернем окне.

button2.onclick = function (e) {
   my_window.buttonTwoHasBeenClicked(); // this is defined in the child window.. once executed it means the button has been clicked.
}

Если вы хотите определить событие из в пределах дочернее окно:

// put this in your child window javascript source
// also change "button2" to whatever your second button's ID is.
window.opener.getElementById("button2").onclick = function () {
   alert("button has been clicked on parent window");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...