	//软件盘HTML
	var global_input_name="";
	var strHTML = "";
	strHTML += "<style>";
	strHTML += ".softkeyboardinput{width:24px;height;24px;font-family:tahoma,'宋体'; font-size:12px;font-weight:bold;color:#669900;background-color:#E9F5D0;padding-top:2px;border-top-width:1px;border-right-width:1px;border-bottom-width:1px;border-left-width:1px;cursor:pointer;border-top-style:solid;border-right-style:solid;border-bottom-style:solid;border-left-style:solid;border-top-color:#000000;border-right-color:#000011;border-bottom-color:#000011;border-left-color:#000000; margin:1px; }";
	strHTML += ".softkeyboardinput_keyboard{width:24px;height;24px;font-family:Arial,'宋体'; font-size:12px;font-weight:bold;color:#669900;background-color:#ffffff;padding-top:3px;border-top-width:1px;border-right-width:1px;border-bottom-width:1px;border-left-width:1px;cursor:pointer;border-top-style:solid;border-right-style:solid;border-bottom-style:solid;border-left-style:solid;border-top-color:#000000;border-right-color:#000011;border-bottom-color:#000011;border-left-color:#000000;margin:1px;}";
	strHTML += ".softkeyboardinput_enter{width:50px;height;24px;font-family:Arial,'宋体'; font-size:12px;font-weight:bold;color:#669900;background-color:#ffffff;padding:1px;border-top-width:1px;border-right-width:1px;border-bottom-width:1px;border-left-width:1px;cursor:pointer;border-top-style:solid;border-right-style:solid;border-bottom-style:solid;border-left-style:solid;border-top-color:#000000;border-right-color:#000011;border-bottom-color:#000011;border-left-color:#000000;margin:1px;}";
	strHTML += ".softkeyboardinput_switch{width:102px;height;24px;font-family:Arial,'宋体'; font-size:12px;font-weight:bold;color:#669900;background-color:#ffffff;padding:1px;border-top-width:1px;border-right-width:1px;border-bottom-width:1px;border-left-width:1px;cursor:pointer;border-top-style:solid;border-right-style:solid;border-bottom-style:solid;border-left-style:solid;border-top-color:#000000;border-right-color:#000011;border-bottom-color:#000011;border-left-color:#000000;margin:1px;}";
	strHTML += "</style>";
	
	strHTML += "<DIV align=center id=\"softkeyboard\" name=\"softkeyboard\" style=\"position:absolute;left:10px;top:10px;z-index:180;display:none\">";
	strHTML += "<INPUT type=hidden value=\"\" id=softkeyboard_pwd name=softkeyboard_pwd><INPUT type=hidden value=ok name=action2>";
	
	strHTML += "<table align=\"center\" border=\"0\" cellspacing=\"1\" cellpadding=\"2\" bgcolor=#000000>";
	strHTML += "<tr><td width=100% height=100% align=center valign=middle bgcolor=#FFFFFF>";
	
	strHTML += "<table align=\"center\" width=\"264px\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
	strHTML += "<tr>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" 1 \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" 2 \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" 3 \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" 4 \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" 5 \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" 6 \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" 7 \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" 8 \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" 9 \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" 0 \"></td>";
	//键盘输入 按钮
	strHTML += "<td align='right' valign='top'><img src='/img/close_kb.jpg'  title=\"关闭键盘输入\" style='cursor:pointer' onclick=\"OverInput();\"></td>";
	//strHTML += "<td><input class=softkeyboardinput_keyboard type=button value=\"7\" style=\"font-family:Wingdings\" title=\"键盘输入\" onclick=\"objPwd.value='';objPwd.readOnly=0;objPwd.focus();softkeyboard.style.display='none';\"></td>";
	strHTML += "</tr>";
	
	strHTML += "<tr>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" q \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" w \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" e \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" r \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" t \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" y \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" u \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" i \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" o \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" p \"></td>";
	//后退按钮
	strHTML += "<td><input class=softkeyboardinput type=button value=\" ← \" title=\"退格\" onclick=\"setpwdvalue();\"  onDblClick=\"setpwdvalue();\"></td>";
//	strHTML += "<td><input name=\"button9\" type=button onClick=\"capsLockText();setCapsLock();\"  onDblClick=\"capsLockText();setCapsLock();\" value=\"切换大/小写\" style=\"width:100px;\"></td> ";
	strHTML += "</tr> ";
	
	strHTML += "<tr>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" a \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" s \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" d \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" f \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" g \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" h \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" j \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" k \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" l \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" . \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" , \"></td>";
	strHTML += "</tr>";

	strHTML += "<tr>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" z \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" x \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" c \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" v \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" b \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" n \"></td>";
	strHTML += "<td><input name=keybo class=softkeyboardinput type=button onclick=\"addValue(this.value.trim())\" value=\" m \"></td>";
	strHTML += "<td colspan=\"4\" align=center valign=bottom><input class=softkeyboardinput_switch type=button value=\" 切换大小写 \" title=\"切换大小写\" onclick=\"SwitchUpLow();\"></td>";
	strHTML += "</tr>";
	
	strHTML += "</table></td></tr></table></DIV>";
	document.write(strHTML);
  var whichIt = null; //事件元素
	var objPwd ;//密码输入框对象
	var softkeyboard = document.getElementById("softkeyboard");
	NS = (document.layers) ? 1 : 0;
	IE = (document.all) ? 1: 0;
	self.onError=null;
	currentX = currentY = 0; 
	sWidth = 268;
	sHeight = 90;
	
	window.onload = function()
	{
		objPwd = null;
	}		
	
	/*if(NS) 
	{
		window.captureEvents(Event.MOUSEUP|Event.MOUSEDOWN);
		window.onmousedown = grabIt;
	 	window.onmousemove = moveIt;
		window.onmouseup = dropIt;	
	}
	if(IE) 
	{
		//document.onkeyup	 = cancelinput;
		document.onmousedown = grabIt;
	 	document.onmousemove = moveIt;
		document.onmouseup = dropIt;	
	}
*/
function grabIt(e) 
{
	check = false;
	if(IE) 
	{
		whichIt = event.srcElement;
		while (whichIt.id.indexOf("softkeyboard") == -1) 
		{
			whichIt = whichIt.parentElement;
			if (whichIt == null) { return true; } 
		}
		whichIt.style.pixelLeft = whichIt.offsetLeft;
		whichIt.style.pixelTop = whichIt.offsetTop;
		currentX = (event.clientX + document.body.scrollLeft);
   		currentY = (event.clientY + document.body.scrollTop); 	
	} 
	else 
	{ 
		window.captureEvents(Event.MOUSEMOVE);
		if(checkFocus (e.pageX,e.pageY)) 
		{ 
			whichIt = document.softkeyboard;
			StalkerTouchedX = e.pageX-document.softkeyboard.pageX;
			StalkerTouchedY = e.pageY-document.softkeyboard.pageY;
		} 
	}
	return true;	
}

function moveIt(e) 
{
	if (whichIt == null) { return true; }
	if(IE) 
	{
	    newX = (event.clientX + document.body.scrollLeft);
	    newY = (event.clientY + document.body.scrollTop);
	    distanceX = (newX - currentX);
	    distanceY = (newY - currentY);
	    currentX = newX;
	    currentY = newY;
	    whichIt.style.pixelLeft += distanceX;
	    whichIt.style.pixelTop += distanceY;
		if(whichIt.style.pixelTop < document.body.scrollTop) whichIt.style.pixelTop = document.body.scrollTop;
		if(whichIt.style.pixelLeft < document.body.scrollLeft) whichIt.style.pixelLeft = document.body.scrollLeft;
		if(whichIt.style.pixelLeft > document.body.offsetWidth - document.body.scrollLeft - whichIt.style.pixelWidth - 20) whichIt.style.pixelLeft = document.body.offsetWidth - whichIt.style.pixelWidth - 20;
		if(whichIt.style.pixelTop > document.body.offsetHeight + document.body.scrollTop - whichIt.style.pixelHeight - 5) whichIt.style.pixelTop = document.body.offsetHeight + document.body.scrollTop - whichIt.style.pixelHeight - 5;
		event.returnValue = false;
	} 
	else 
	{ 
		whichIt.moveTo(e.pageX-StalkerTouchedX,e.pageY-StalkerTouchedY);
        if(whichIt.left < 0+self.pageXOffset) whichIt.left = 0+self.pageXOffset;
        if(whichIt.top < 0+self.pageYOffset) whichIt.top = 0+self.pageYOffset;
        
        if( (whichIt.left + whichIt.clip.width) >= (window.innerWidth+self.pageXOffset-17)) 
			whichIt.left = ((window.innerWidth+self.pageXOffset)-whichIt.clip.width)-17;
			
        if( (whichIt.top + whichIt.clip.height) >= (window.innerHeight+self.pageYOffset-17)) 
			whichIt.top = ((window.innerHeight+self.pageYOffset)-whichIt.clip.height)-17;
        return false;
	}
    return false;	
}

function dropIt() 
{
	whichIt = null;
    if(NS) window.releaseEvents (Event.MOUSEMOVE);
    return true;	
}

String.prototype.trim = function()
{
	// 用正则表达式将前后空格
	// 用空字符串替代。
	return this.replace(/(^\s*)|(\s*$)/g, "");
}
//实现BackSpace键的功能
function setpwdvalue()
{
	var sPwd = document.getElementById("softkeyboard_pwd");
	sPwd.value = sPwd.value.substr(0,sPwd.value.length-1);
	objPwd.value = sPwd.value;
}
//输入完毕
function OverInput()
{
	var sPwd = document.getElementById("softkeyboard_pwd");
	if(null==sPwd || null==objPwd)return;
	objPwd.value = sPwd.value;
	softkeyboard.style.display = "none";
	//sPwd.value = "";
	objPwd.focus();
	objPwd.readOnly = 0;
}
//显示软键盘
function showkeyboard(e)
{
	var evt = e ? e : event;
	var x = evt.clientX;
	var y =  evt.clientY;
	if(y + sHeight/2)
		softkeyboard.style.top = y + document.body.scrollTop + 15 + "px";

	if((x - sWidth/2)>0)
	{
		softkeyboard.style.left = x - sWidth/2 + "px";
	}
	else
	{
		softkeyboard.style.left = 5;
	}
	
	softkeyboard.style.display = "block";
	softkeyboard.style.zIndex = "1000111";
	$("#softkeyboard_pwd").val($(passTextID).val());
	objPwd.readOnly = 1;
	objPwd.blur();
}

//给密码框对象添加新值
function addValue(newValue)
{
	var sPwd = document.getElementById("softkeyboard_pwd");
	if(sPwd.value.length < objPwd.maxLength)
	{
		sPwd.value += newValue;
	}			
	if(sPwd.value.length <= objPwd.maxLength)
	{
		objPwd.value = sPwd.value;
	}
}
var passTextID;  //接收传过来的密码的ID

function keyType(type,input_name,e)
{
	global_input_name=input_name;
	 passTextID = "#"+global_input_name;
	if (null==global_input_name) {
		return;
	}
	if (""==global_input_name) {
		return;
	}
	
	objPwd = document.getElementById(global_input_name);
		if (null==objPwd) {
		return;
	}
	
	if(type == "soft")
	{
		$("#softkeyboard_pwd").value = objPwd.value;
		showkeyboard(e);
		objPwd.readOnly = 1;
	}
	else
	{
		objPwd.value='';
		objPwd.readOnly=0;
		objPwd.focus();
		softkeyboard.style.display='none';
	}
}

function showclient()
{
	document.write('<a href="#" onclick="javascript:keyType(\'soft\',\'txtPwd\',event)" title="使用软键盘"><img src="./img/kb_icon.gif" border=0 /></a>');	
}
function showclientex(input_name)
{
	document.write('<a href="javascript:;" style="float:left;" onclick="javascript:keyType(\'soft\',\''+ input_name +'\',event)" title="使用软键盘"><img src="./img/kb_icon.gif" border=0 /></a>');	
}
var global_capslock=false;//即默认为小写
function SwitchUpLow()
{
	var obj=document.getElementsByTagName("input");
	if(null!=obj)
	{
		for(var i=0;i<obj.length;i++)
		{
			var var1=obj[i].getAttribute("value");
			if(obj[i].getAttribute("name")!="keybo")continue;
			if(global_capslock)
			{
				obj[i].setAttribute("value",var1.toLowerCase());
			}else
			{
				obj[i].setAttribute("value",var1.toUpperCase());//var1.toUpper());
			}
		}
		if(global_capslock)
		{
			global_capslock=false;
		}else
		{
			global_capslock=true;
		}
	}	
}