var input_width = 400 var input_height = 120 var Win = navigator.userAgent.indexOf('Win')!=-1 var Mac = navigator.userAgent.indexOf('Mac')!=-1 var X11 = navigator.userAgent.indexOf('X11')!=-1 var Moz = navigator.userAgent.indexOf('Gecko')!=-1 var msie = navigator.userAgent.indexOf('MSIE')!=-1 var bwlang = getBrowserLANG() //入力後退避位置 if( Mac && msie ){ var gox=2000 ; var goy=2000 } else { var gox=-300 ; var goy=-300 } //n4用レイヤー出力位置 if(document.layers){var n4_left=300 ; var n4_top= 100 } inputLay['input']=new inputLay('input',-100,-100,'') function postInputLayForm(inCmd,inKey){ document.input_lay_form.cmd.value = inCmd; document.input_lay_form.user_input_key.value = inKey; document.input_lay_form.submit(); } function formData(inCmd,inKey){ document.input_lay_form.cmd.value = inCmd; document.input_lay_form.user_input_key.value = inKey; } function wrtInputLay(e,message,inFormAction,inCmd,inKey,inVal){ openInput(); var def_flag = true; set_event__wrtInputLay() //イベントキャプチャースタート submit_script1 = 'formData(\'' + inCmd + '\',\'' + inKey + '\')' submit_script2 = 'postInputLayForm(\'' + inCmd + '\',\'' + inKey + '\')' ddata = '' ddata = '
' ddata += '\n' ddata += ' ' ddata += ' ' ddata += '
入力フォーム
' ddata += '
' ddata += ' ' + message + '
' ddata += ' ' ddata += ' ' ddata += '

' ddata += ' 入力' ddata += '                 ' ddata += ' キャンセル' ddata += '
' ddata += '
\n' ddata += '
\n' inputLay['input'].outputLAYOJ(getLayOj('input'),'')//一時クリア inputLay['input'].outputLAYOJ(getLayOj('input'),ddata) if(e!=null){ //if(navigator.userAgent.indexOf('Gecko')!=-1){ //n6,m1用 if(navigator.userAgent.indexOf('Netscape6')!=-1){ //n6,m1用 var left = e.currentTarget.offsetLeft + 50 var top = e.currentTarget.offsetTop - 100 } else if(navigator.userAgent.indexOf('Opera')!=-1){ //Opera var left = getMouseX(e) + 50 var top = getMouseY(e) + document.body.scrollTop - 100 } else { var left = getMouseX(e) + 50 var top = getMouseY(e) - 100 } if (top<0){ top=0; } if(document.layers){ var left = n4_left ; var top = n4_top }//n4修正 inputLay['input'].moveLAYOJ(getStyleOj('input'),left,top) } else { if (document.layers){ top = document.body.scrollTop + (window.innerHeight / 2) - (input_height / 2);//n4 } else { top = document.body.scrollTop + (document.body.clientHeight / 2) - (input_height / 2); } left = document.body.clientWidth / 2 - (input_width / 2); if(document.layers){ var left = n4_left ; var top = n4_top }//n4修正 inputLay['input'].moveLAYOJ(getStyleOj('input'),left,top) } document.input_lay_form.user_input_val.focus(); document.input_lay_form.user_input_val.focus(); } //--レイヤー生成 function inputLay(layName,x,y){ this.id = layName // ドラッグできるようにするレイヤー名 this.x = x // 初期left位置 this.y = y // 初期top位置 if(document.layers) //n4用 this.div='\n' +'\n' + '\n' else //n4以外用 this.div='
\n' + '
\n' document.write(this.div) return } inputLay.prototype.moveLAYOJ = moveLAYOJ //メソッドを追加する inputLay.prototype.outputLAYOJ = outputLAYOJ //メソッドを追加する inputLay.prototype.zindexLAYOJ = zindexLAYOJ //メソッドを追加する //--レイヤー移動 function moveLAYOJ(oj,x,y){ if(document.getElementById){ //e5,e6,n6,m1,o6用 oj.left = x oj.top = y } else if(document.all){ //e4用 oj.pixelLeft = x oj.pixelTop = y } else if(document.layers) //n4用 oj.moveTo(x,y) hideOverInputElement(x,y); } //--HTML出力 function outputLAYOJ(oj,html){ if(document.getElementById) oj.innerHTML=html //n6,m1,e5,e6用 else if(document.all) oj.innerHTML=html //e4用 else if(document.layers) //n4用 with(oj.document){ open() write(html) close() } } //--奥行きZ座標set function zindexLAYOJ(oj,zindex){ if(document.getElementById) oj.zIndex=zindex //n6,m1,e5,e6,o6用 else if(document.all) oj.zIndex=zindex //e4用 else if(document.layers) oj.zIndex=zindex //n4用 } //--layNameで指定したオブジェクトを返す(必ずonload後に実行すること) function getLayOj(layName){ if(document.getElementById) return document.getElementById(layName) //e5,e6,n6,m1,o6用 else if(document.all) return document.all(layName) //e4用 else if(document.layers)return document.layers[layName] //n4用 } function getStyleOj(clickElement){ return (!!document.layers)?getLayOj(clickElement) :getLayOj(clickElement).style } //--マウスX座標get function getMouseX(e){ if(window.opera) //o6用 return e.clientX else if(document.all) //e4,e5,e6用 return document.body.scrollLeft+event.clientX else if(document.layers||document.getElementById) return e.pageX //n4,n6,m1用 } //--マウスY座標get function getMouseY(e){ if(window.opera) //o6用 return e.clientY else if(document.all) //e4,e5,e6用 return document.body.scrollTop+event.clientY else if(document.layers||document.getElementById) return e.pageY //n4,n6,m1用 } //--レイヤ-左辺X座標get function getLEFT(layName){ if(document.all) //e4,e5,e6,o6用 return document.all(layName).style.pixelLeft else if(document.getElementById) //n6,m1用 return (document.getElementById(layName).style.left!="") ?parseInt(document.getElementById(layName).style.left):"" else if(document.layers) //n4用 return document.layers[layName].left } //--レイヤ-上辺Y座標get function getTOP(layName){ if(document.all) //e4,e5,e6,o6用 return document.all(layName).style.pixelTop else if(document.getElementById) //n6,m1用 return (document.getElementById(layName).style.top!="") ?parseInt(document.getElementById(layName).style.top):"" else if(document.layers) //n4用 return document.layers[layName].top } //--マウスカーソルを動かした時レイヤーもmoveLAYOJで動かす function mmove_wrtInputLay(e) { if(!window.clickElement) return if (getLayOj(clickElement)) { movetoX = getMouseX(e) - offsetX movetoY = getMouseY(e) - offsetY var oj=getStyleOj(clickElement) inputLay[clickElement].moveLAYOJ(oj,movetoX,movetoY) return false } } //--マウスボタンを押し下げた時 // レイヤー内のカーソルoffset位置取得 function mdown_wrtInputLay(e) { if(navigator.userAgent.indexOf('Gecko')!=-1) //n6,m1用 if(e.currentTarget.className != 'dragLays') return else clickElement = e.currentTarget.id var selLay = getLayOj(clickElement) if (selLay){ offsetX = getMouseX(e) - getLEFT(selLay.id) offsetY = getMouseY(e) - getTOP(selLay.id) if(document.layers){ offsetX = getMouseX(e)+10 ; offsetY = getMouseY(e)+10 } } return false } //--マウスボタンを上げた時ドラッグ解除 var zcount = 0 function mup_wrtInputLay(e) { if(!window.clickElement) return if (getLayOj(clickElement)) { inputLay[clickElement].zindexLAYOJ( getStyleOj(clickElement),zcount++) clickElement=null } } //--イベントキャプチャー開始 function set_event__wrtInputLay(){ document.onmousemove = mmove_wrtInputLay //n4,m1,n6,e4,e5,e6,o6用 document.onmouseup = mup_wrtInputLay //n4,m1,n6,e4,e5,e6,o6用 if(navigator.userAgent.indexOf('Gecko')!=-1) //m1,n6用 document.onmousedown = mdown_wrtInputLay if(document.layers){ //n4用 document.captureEvents(Event.MOUSEMOVE) document.captureEvents(Event.MOUSEUP) } } //--イベントキャプチャー停止 function stop_event__wrtInputLay(){ document.onmousemove = null //n4,m1,n6,e4,e5,e6,o6用 document.onmouseup = null //n4,m1,n6,e4,e5,e6,o6用 if(navigator.userAgent.indexOf('Gecko')!=-1) //m1,n6用 document.onmousedown = null if(document.layers){ //n4用 document.releaseEvents(Event.MOUSEMOVE) document.releaseEvents(Event.MOUSEUP) } } //--ブラウザの言語を取得 function getBrowserLANG(){ if(document.all) return navigator.browserLanguage //e4,e5,e6,o6用 else if(document.layers) return navigator.language //n4用 else if(document.getElementById) return navigator.language.substr(0,2) //n6,n7,m1用 } function openInput(){ var obj=document.getElementById("input_lay_obj"); if (obj != null){ obj.style.display="block"; } } function closeInput(){ var obj=document.getElementById("input_lay_obj"); obj.style.display="none"; hideOverInputElement(2000,2000); } function hideOverInputElement(x,y){ function getStyleProp(obj, style){ var value = obj.style[style]; if (!value) { if (document.defaultView && typeof (document.defaultView.getComputedStyle) == "function") { // Gecko, W3C value = document.defaultView. getComputedStyle(obj, "").getPropertyValue(style); } else if (obj.currentStyle) { // IE value = obj.currentStyle[style]; } else { value = obj.style[style]; } } return value; }; if (msie){ var tags = new Array("applet", "iframe", "select"); var EX1 = x;// var EX2 = input_width + EX1; var EY1 = y;//y var EY2 = input_height + EY1; for (var k = tags.length; k > 0; ) { var ar = document.getElementsByTagName(tags[--k]); var cc = null; for (var i = ar.length; i > 0;) { cc = ar[--i]; var cp = getAbsolutePos(cc); var CX1 = cp.x; var CX2 = cc.offsetWidth + CX1; var CY1 = cp.y; var CY2 = cc.offsetHeight + CY1; if (this.hidden || (CX1 > EX2) || (CX2 < EX1) || (CY1 > EY2) || (CY2 < EY1)) { if (!cc.__msh_save_visibility) { cc.__msh_save_visibility = getStyleProp(cc, "visibility"); } cc.style.visibility = cc.__msh_save_visibility; } else { if (!cc.__msh_save_visibility) { cc.__msh_save_visibility = getStyleProp(cc, "visibility"); } cc.style.visibility = "hidden"; } } } } } function getAbsolutePos(el) { var r = { x: el.offsetLeft, y: el.offsetTop }; if (el.offsetParent) { var tmp = getAbsolutePos(el.offsetParent); r.x += tmp.x; r.y += tmp.y; } return r; };