Yahoo検索プログラム

windowObj = new Object(); windowObj.winNo = 1; // 表示するウィンドウの番号 windowObj.winTop = 150; // 表示するウィンドウの上位置 windowObj.winLeft = 10; // 表示するウィンドウの左位置 windowObj.zIndex = 100; // 表示するウィンドウのZ座標 windowObj.posStep = 20; // 次に表示するウィンドウのオフセット位置 windowObj.posLimit = 400; // 表示するウィンドウの下限 windowObj.posTopStart = 150; // 位置をリセットした時の初期値(上) windowObj.posLeftStart = 10; // 位置をリセットした時の初期値(左) windowObj.width = 520; // ウィンドウの横幅 windowObj.height = 360; // ウィンドウの縦幅 window.onload = function() { $("ajaxForm").onsubmit = function() { var searchKeyword = $F("keyword"); if (searchKeyword == "") { alert("検索キーワードを入力してください"); return false; } var url = "yahoo.cgi?query="+encodeURIComponent(searchKeyword)+"&cache="+(new Date()).getTime(); new Ajax.Request(url, { method: "get", onComplete: windowObj.windowOpen }); return false; } $("keyword").focus(); } windowObj.windowOpen = function(httpObj) { var txt = ""; var xmlData = httpObj.responseXML; var resultTag = xmlData.getElementsByTagName("Result"); var titleList = xmlData.getElementsByTagName("Title"); for (i=0; i'+pageTitle + "
"; } var subwin = new Window("win"+windowObj.winNo, { className: "dialog", title: "検索語:"+$F("keyword"), left:windowObj.winLeft, top:windowObj.winTop, width:windowObj.width, height:windowObj.height, zIndex:windowObj.zIndex }); subwin.getContent().innerHTML = txt; subwin.show(); windowObj.winNo++; windowObj.zIndex++; windowObj.winTop += windowObj.posStep; windowObj.winLeft += windowObj.posStep; if (windowObj.winTop > windowObj.posLimit) { windowObj.winTop = windowObj.posTopStart; windowObj.winLeft = windowObj.posLeftStart; } $("keyword").focus(); }
・サンプルを実行
・サンプルをダウンロード
Ajax実践テクニック 説明などは本書を参考にしてください。JavaScript以外のソースはデータをダウンロードするか本書を参照してください。