みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Thickboxを自動で閉じることは不可能でしょうか?

お世話になります

Thickbox.jsを使用してloading graphのようなものを作っているのですが100%になったら自動で閉じるようにはできないでしょうか?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<title>Thickbox</title>
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="./js/jquery.js"></script>
<script type="text/javascript" src="./js/thickbox.js"></script>
<link rel="stylesheet" href="./css/thickbox.css" type="text/css" media="screen" />
</head>
<body><div id="wrapper">
<a href="search.html?placeValuesBeforeTB_=savedValues&TB_iframe=true&height=90&width=300" title="charasearch" class="thickbox">
<input type="button" value="character search" class="search">
</a>
</div>
</body>
</html>

<<search.html>>
実際にはhtmlファイルではなくcgiファイル(search.cgi)で処理を行っています
Thickbox.cssをいじって本文のみ表示させてます(上側のTitleやcloseボタンはdisplay:none;しています
必要なとこだけになりますが・・・

<script type="text/javascript"><!--
window.onload = function() {
Timer = setInterval('counts()',1);
}
w=0;
function counts() {
w += 1;
document.getElementById("graph").style.width = w + "px";
if(w >= 300) { clearInterval(Timer);
}
}
//--></script>
<style type="text/css"><!--
#graph {
width:0px;
height:20px;
background-color:red;
margin-top:5px;
float:left;
}
--></style>

<div id="graph"><div>

ページを移動させていけば簡単なのですが大まかな流れとして
id,passなどを入力
character searchボタンを押す
Thickboxでseach.cgiを呼び出しchara.cgiの中から同じものがないか調べる
あればエラー表示、なければ続けて入力といった感じにしています

投稿日時 - 2008-08-20 00:53:28

QNo.4263859

困ってます

質問者が選んだベストアンサー

単純にthickboxのウインドウを消すだけなら tb_remove() というのがありますが、この関数が使えないでしょうか。

thickboxで表示するHTML中でこんな感じでしょうか?

if(w >= 300) { clearInterval(Timer);
if(データがなければ){
tb_remove();
}
}

投稿日時 - 2008-08-20 06:27:48

お礼

回答ありがとうございます

子ページ(seach.cgi)ではthickbox.jsがないのでできませんでしたが子ページから親ページを操作して(parent.document.getElementById("test").click();)作動させると見事消すことができました(^^)v

ありがとうございました m(--)m

投稿日時 - 2008-08-20 20:42:35

ANo.1

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問