2013-02-20 37 views
1

目前我有一個鏈接,點擊時會生成一個包含在DIV中的iframe。這個DIV包含一個鏈接,當點擊時隱藏它。替代在div/iframe上使用.remove

但是,我不想隱藏它,我想iframe'刪除',所以它不在後臺運行。

我明白,.remove做到這一點,但我不能再生成它。

這是當前的代碼:

$(document).ready(function() { 
    $("#overlay").hide(); 
}); 

$("#ShowSlideshow").live('click', function() { 
    $("#overlay").show(); 
    $('#slideshow').html('<iframe border="0" frameborder="0" width="100%" height="100%" src="index.html"></iframe>').show() 
}); 

$("#HideSlideshow").live('click', function() { 
    $("#overlay").hide(); 
    $("#slideshow").hide(); 
}); 

這裏是DIVS:

<div id="overlay"><a href="#" id="HideSlideshow">Close Slideshow</a> 
<div id="slideshow"></div> 
</div> 

回答

2

你不想刪除的實際#slideshow,你只是想刪除裏面的iframe #slideshow。像這樣:

$("#HideSlideshow").live('click', function() { 
    $("#overlay").hide(); 
    $("#slideshow iframe").remove(); 
}); 
+0

完美謝謝! – Jason 2013-02-20 20:25:21

+0

不客氣:) – 2013-02-21 08:49:00

1

給予一定的ID,以iframe和從股利取出的iFrame ......然後,它的工作原理...

試試下面...

小提琴:http://jsfiddle.net/458bM/50/

HTML:

<div id="overlay"><a href="#" id="HideSlideshow">Close Slideshow</a> 

<div id="slideshow"></div> 
</div> 
<a href="#" id="ShowSlideshow">Show Slideshow</a> 

JQuery:

$(document).ready(function() { 
    $("#overlay").hide(); 
}); 

$("#ShowSlideshow").live('click', function() { 
    $("#overlay").show(); 
    $('#slideshow').html('<iframe border="1" frameborder="1" width="100%" id="iframeshow" height="100%" src="http://www.green.org/"></iframe>').show() 
}); 

$("#HideSlideshow").live('click', function() { 
    $("#overlay").hide(); 
    $("#iframeshow").remove(); 
});