如何使用jQuery将弹出面板从iframe移动到父窗口

时间:2014-01-02 13:21:44

标签: jquery gwt

我读了这个问题:

Move element within parent from iframe Use jquery inside GWT jsni

但我的代码仍有问题:

private native void graveUpFromIframe() /*-{               
    $entry(function () {                           
        var target = $wnd.$("body", $wnd.parent.document);
        var source = $wnd.$("#bpml-editor-popup");
        source.appendTo(target);
        return 0;                                         
    });                                                   

}-*/;                                                     

点击应用程序后打开简单的PopupPanel,但当app在iframe中工作时,我想将此面板移动到父窗口。 此时我的代码不起作用,我在log / gwt调试窗口没有例外。

//编辑:在jQuery选择器中缺少#但问题仍然存在。

1 个答案:

答案 0 :(得分:1)

您的选择器中似乎有一个拼写错误,可能您必须将哈希字符添加到此行,否则您将按标签<bpml-editor-popup>选择元素,我认为不是这样。

$wnd.$("#bpml-editor-popup");
顺便说一句,如果你不使用jQuery导入3party jQueryplugins,我会使用gwtquery,因为你使用java来做所有这些事情,所以你不必使用JSNI,你可以调试,跟踪错误,选择器执行更好,你的应用程序的最终代码相当小。

编辑:

如果您想用$entry包装代码,则必须调用返回的函数,因此将()添加到您的块中:

$entry(function(){})();