从孩子控制父页面

时间:2014-09-22 09:02:35

标签: javascript jquery html

我已经成功地将父页面上的一些控件添加到子页面(弹出窗口)并使它们控制父页面。这些是javascript函数。

我现在想将这一行从父页面添加到子页面:

   <li><a class="button icon-play play" href="#" onclick="return false;"></a></li>

与此相关的JavaScript是:

// Listen for Play Button Click
    $('.button.play').click(function(){
        if($(this).hasClass('icon-play'))
        {
            start_teleprompter();
        }
        else
        {
            stop_teleprompter();
        }
    });

我遇到的问题是,javascript位于一个名为script.js的文件中,如果链接在子页面上,我无法看到它使脚本运行。

以前我所做的是添加了parent_window.document。到javascript函数。

所以其中一个有用的功能:(这个js在子页面中)

function changeBGC(color)
    {
    if (parent_window && !parent_window.closed) {
    parent_window.document.getElementById("teleprompter").style.backgroundColor = color;
    }
    }

,按钮为:

<div class="swatch turquoise" onClick="javascript:changeBGC('#1abc9c')"></div>

1 个答案:

答案 0 :(得分:1)

您可以将此脚本添加到子页面以调用其父窗口的函数:

<script src="jquery.js"></script>
<script>
    $(function() {
        $('.button.play').click(function(){
            if (parent_window && !parent_window.closed) {
                if($(this).hasClass('icon-play')) {
                    parent_window.start_teleprompter();
                } else {
                    parent_window.stop_teleprompter();
                }
            }
        });
    });
</script>