Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   удаление iframe (https://javascript.ru/forum/misc/34202-udalenie-iframe.html)

zaytsewa 26.12.2012 19:32

залила, можно посмотреть http://zaytsewa.yomu.ru/avia/

Deff 26.12.2012 19:44

zaytsewa,
Сделаю ближе к полуночи

ruslan_mart 26.12.2012 19:48

<iframe src="form1.html"/>
<iframe src="form1.html?id=864.3636696461892" id="864.3636696461892"/>
<iframe src="form1.html?id=282.5240789059157" id="282.5240789059157"/>
<iframe src="form1.html?id=977.3967193243343" id="977.3967193243343"/>


function Close()
{
   var a = location.search.split('=')[1];
   parent.$('#'+a).remove();
}

Вот Вам удаление:)

zaytsewa 26.12.2012 20:02

попробовала, не работает(

ruslan_mart 26.12.2012 20:46

zaytsewa, странно, попробуйте задать ID без точек и желательно с буквы.

zaytsewa 26.12.2012 20:52

думаю дело в конкатенации строк, в магических правилах кавычек и тд...
попробую конечно..

zaytsewa 26.12.2012 20:59

проверила - точки не виноваты

Deff 26.12.2012 21:12

zaytsewa,
Контент данного скрипта
$(document).ready(function(){

$("#add_btn").click(function(){
	//var v = $(document.createElement("div"));
	var v = $(document.createElement("iframe"));
	var id = Math.random()*1001;
	v.attr("src","form1.html?id="+id);
	v.attr("id", id);
	//alert(v.attr("id"));
	//v.load("form1.html");
	$("#frames_div").append( v );
	//alert("addButton");
});

$(window).load(function() {
	//var v = $(document.createElement("div"));
	//v.load("form1.html");
	var v = $(document.createElement("iframe"));
	v.attr("src","form1.html");
	$("#frames_div").append( v );
});

/*
function close_form( close_btn )
{
	var v = $(close_btn).parent();
	v.remove();
}

function minimize( hide_btn )
{
var v = $(close_btn).parent();
var isHidden = ( $( "tr:eq(1)").css("display") == 'none');
for ( i = 1; i < 3; ++i )
{
if ( !isHidden )
	v.find($("tr:eq("+i+")")).css('display','none');
else
	v.find($("tr:eq("+i+")")).css('display','');
	}
if ( !isHidden )
	$(hide_btn).text('[ ]');
	else
	$(hide_btn).text('-')
	
}*/

});

замените на этот
function Lload(a){
 //Удаление фрейма
 $(a).contents().find("body #close_btn").click(function(){
   $(a).parent('.div_wrap').remove();
 });
 //Скрытие фрейма
 $(a).contents().find("body #hide_btn").click(function(){
   //$(a).wrap("<div class=div_wrap></div>");
   $(a).addClass("HideIframe").hide();
   $(a).parent().append('<button class="show_btn">show</button>');
 });
 //Раскрытие скрытого фрейма
 $("button.show_btn").live("click",function(){
   $(this).parent().find('.HideIframe').show().removeClass('HideIframe');
   $(this).remove();
   
 });
};
$(document).ready(function(){

$("#add_btn").click(function(){
	var v = $(document.createElement("iframe"));
	v.attr("onload","Lload(this)");
	var id = Math.random()*1001;
	v.attr("src","form1.html?id="+id);
	v.attr("id", id);
	$("#frames_div").append( v );
	v.wrap("<div class=div_wrap></div>");
});

$(window).load(function() {
         $("#add_btn").click();
});


});

================================
И добавьте кусок стиля на главную
<style>
div.div_wrap{
 border:red solid 1px;
 //float:left;
 display:inline-block;
}
</style>

Deff 26.12.2012 21:18

Зы - Можно укоротить скрипт,если кнопки скрытия удаления фрейма вынести из фрейма на главную в div обрамление каждого фрейма

zaytsewa 26.12.2012 21:34

если вынести на главную - то некрасиво будет


Часовой пояс GMT +3, время: 01:57.