如何在JQuery中创建与两个窗口的交互

时间:2011-03-06 15:36:24

标签: jquery css window

L.S。

打扰一下,如果我的英语不是很好。我尽量让它变得可以理解。 在过去的几周里,我一直在寻找一种解决方案,在Web应用程序中的两个窗口之间进行某种交互。我想在第一个窗口播放动画,当它播放时,我想打开一个带有控件的新窗口来停止它。 (所有这一切的目的是我想在我的第一个显示器上播放动画,在第二个显示器上播放动画控件,但这不是很重要)。 我知道在JQuery中有一个window.opener的东西,但我试图实现它几次,但是没有用。我希望有人能帮帮忙。非常感谢! 这就是我现在所拥有的:

$(function test() { /* Assign a name to this window (index.html)*/
    window.name = "main"; /*When the button test is clicked  */
    $("#test").click(function test() { /*check if the window name works */
        alert(window.name); /* This works! */
        /*Open a second window, source is controlpanel.html, window name is control */
        var control = window.open("controlpanel.html", "control");
    });

    /*When button test 2 is clicked*/
    $("#test2").click(function() { /* change the color of the control window */
        $(control).css('background-color', '#9900FF'); /*This does not work */
    });
});

2 个答案:

答案 0 :(得分:1)

从主窗口启动控制窗口,然后您可以使用...从辅助寡妇处理主窗口...

window.parent.document

您也可以使用开场白来执行此操作

如果在辅助窗口中使用javascript打开辅助窗口,则可以在主窗口中调用“function1”。

window.opener.document.function1();

请参阅此示例,了解您要执行的操作: http://www.javascriptkit.com/javatutors/remote2.shtml

答案 1 :(得分:0)

控件不是选择器

$(control).css('background-color', '#9900FF');

CSS需要知道应用背景的位置。您的选择器应该是标记,ID或类别:$('div')$('#myid')$('.myclass')。你在代码中控制它就不是那些。