Как запустить функцию js из фрейма в главном фрейме? - PullRequest
1 голос
/ 24 марта 2011

В моем iframe у меня есть функция:

function CheckDebug(){
        if($('#debug').length > 0){
            debugConsole.debugOn = true;
            debugConsole.IP = "<?=$_SERVER['REMOTE_ADDR']?>";
            debugConsole.log('START DEBUG MODE');
        }
    }

Как запустить эту функцию в главном фрейме, чтобы она влияла на объект debugConsole в iframe?

Ответы [ 2 ]

2 голосов
/ 24 марта 2011

Для доступа к родительскому iframe используйте window.parent , вы можете позвонить:

window.parent

Так вы бы сделали:

window.parent.debugConsole(..);

в качестве примера.

Чтобы родительский доступ имел доступ к iframe, вы можете сделать следующее:

document.getElementById('frameId').contentWindow.funcThatLivesInIframe();

где iframe имеет атрибут id со значением frameId.

0 голосов
/ 24 марта 2011

Просто откройте «верхний» контекст:

function CheckDebug(){
    if (top.$('#debug').length > 0){
        top.debugConsole.debugOn = true;
        top.debugConsole.IP = "<?=$_SERVER['REMOTE_ADDR']?>";
        top.debugConsole.log('START DEBUG MODE');
    }
}

Теперь это самое верхнее окно. Если вы просто хотите подняться на один уровень вверх, вы можете посмотреть на «window.parent».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...