ブックマークレットを作成しました。これには、2つのdiv(iframeのオーバーレイとdiv)とiframeが含まれます。このiframeでは、誰かがそのURLから画像を取得してデータベースに保存できるように、ページを読み込みます。写真を保存したら、ブックマークレットを閉じてほしい。
私のブックマークレットjs:
(function(){
var v = "1.3.2";
if (window.jQuery === undefined || window.jQuery.fn.jquery < v) {
var done = false;
var script = document.createElement("script");
script.src = "http://ajax.googleapis.com/ajax/libs/jquery/" + v + "/jquery.min.js";
script.onload = script.onreadystatechange = function(){
if (!done && (!this.readyState || this.readyState == "loaded" || this.readyState == "complete")) {
done = true;
initMyBookmarklet();
}
};
document.getElementsByTagName("head")[0].appendChild(script);
} else {
initMyBookmarklet();
}
function initMyBookmarklet() {
(window.myBookmarklet = function() {
if ($("#wikiframe").length == 0) {
var s = window.location.href;
if ((s != "") && (s != null)) {
$("body").append("\
<div id='wikiframe'>\
<div id='wikiframe_veil' style=''></div>\
<iframe src='http://test.itemmized.com/iframe.php?&search="+s+"' onload=\"$('#wikiframe iframe').slideDown(500);\" scrolling='no'>Enable iFrames.</iframe>\
<style type='text/css'>\
#wikiframe_veil { display: none; position: fixed; width: 100%; height: 100%; top: 0; left: 0; background:url('http://www.itemmized.com/img/popup/overlay.png') repeat 0 0; cursor: pointer; z-index: 9999; }\
#wikiframe iframe { display: none; position: fixed; top: 30px; right: 30px; overflow:hidden; width: 472px; height: 412px; z-index: 99999; background:#FFF; border: 5px solid rgba(0,0,0,.5); margin: -5px 0 0 -5px; }\
</style>\
</div>");
$("#wikiframe_veil").fadeIn(750);
}
} else {
$("#wikiframe_veil").fadeOut(750);
$("#wikiframe iframe").slideUp(500);
setTimeout("$('#wikiframe').remove()", 750);
}
$("#wikiframe_veil").click(function(event){
$("#wikiframe_veil").fadeOut(750);
$("#wikiframe iframe").slideUp(500);
setTimeout("$('#wikiframe').remove()", 750);
});
})();
}
})();
iframe内でのajax呼び出し後の関数:
function myresult1(result) {
var result_lines = result.split("<splitter>");
if (result_lines[0] == '1') {
$("#loading").html('<img src="../img/common/loader.gif"/>').fadeOut(250);
$('#content_error').html(result_lines[1]).fadeIn(250);
$('#content_error').delay(1500).fadeOut(500);
} else if (result_lines[0] == '2') {
$("#loading").html('<img src="../img/common/loader.gif"/>').fadeOut(250);
$('#content_success').html(result_lines[1]).fadeIn(250);
$('#content_success').delay(1500).fadeOut(500);
$('#form_url').attr('value', '');
$('#url_result').delay(500).fadeOut(500);
}
return true;
そのため、ajax呼び出しの後に関数が呼び出されたときに、2つのdiv(iframeを含む)を閉じたいと思います。jqueryでこれを行うにはどうすればよいですか?