2012-03-01 93 views
0

我有問題要在父窗口中釋放div。我需要這樣做:單擊box.html(在index.html中打開),在div id = product1的父窗口(index.html)中,應該釋放div id = wProdBox1。如何顯示jquery/css來做到這一點?從jQuery的子窗口通知父窗口

這是index.html的

<div id="box1">Text</div> 

<div id="wBox1"> 
    <a href="#" class="hideLink">[X]</a> 
    <object id="objPage" name="foo" type="text/html" data="box.html"></object> 
</div> 

<div id="wProdBox1"> 
    <a href="#" class="hideLink">[X]</a> 
    <object id="objPage2" name="foo" type="text/html" data="box1.html"></object> 
</div> 

<script type="text/javascript"> 
    $("#box1").click(function() { 
    $("#wBox1").show("slow"); 
    $("body").addClass("scroll"); 
    }); 
</script> 

,如果你打開box.html作爲一個新的窗口,並希望改變index.html的東西,這是box.html

<div id="product1">Text box</div> 
<script type="text/javascript"> 
    $("#product1").click(function() { 
    $("#wProdBox1").show("slow"); //HERE IS PROBLEM 
    }); 
</script> 

回答

0

jQuery允許您在選擇器之後傳遞窗口引用:

$("#wProdBox1", window.opener.document).show("slow"); 

我喜歡通過在變量存儲window.opener.document來簡化此:

$(function() { 
    var main = window.opener.document; 

    $("#product1").click(function() { 
     $("#wProdBox1", main).show("slow"); //HERE IS FIX 
    }); 
}) 
0

,你必須通過opener

opener.$("#wProdBox1").show("slow");