互联网页面浏览限制实现总结

1.文本框输入限制

  实现限制输入大、小写英文,数字,浮点小数,日期,中文,部分英文,部分中文等众多功能。直接加入到html代码中即可使用。

 

<script>

function regInput(obj, reg, inputStr)

{

var docSel = document.selection.createRange()

if (docSel.parentElement().tagName != "INPUT") return false

oSel = docSel.duplicate()

oSel.text = ""

var srcRange = obj.createTextRange()

oSel.setEndPoint("StartToStart", srcRange)

var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length)

return reg.test(str)

}

</script>
小写英文:<xmp style= "display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^[a-z]*$/, String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^[a-z]*$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[a-z]*$/, event.dataTransfer.getData('Text'))"

style="ime-mode:Disabled"

><br>
大写英文:<xmp style= "display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^[A-Z]*$/, String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^[A-Z]*$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[A-Z]*$/, event.dataTransfer.getData('Text'))"

style="ime-mode:Disabled">

<br>
任意数字:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^[0-9]*$/, String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^[0-9]*$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[0-9]*$/, event.dataTransfer.getData('Text'))"

style="ime-mode:Disabled"

><br>
限2位小数:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^/d*/.?/d{0,2}$/, String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^/d*/.?/d{0,2}$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^/d*/.?/d{0,2}$/, event.dataTransfer.getData('Text'))"

style="ime-mode:Disabled"

> 如: 123.12<br>


日  期:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^/d{1,4}([-//](/d{1,2}([-//](/d{1,2})?)?)?)?$/,
String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^/d{1,4}([-//](/d{1,2}([-//](/d{1,2})?)?)?)?$/,
window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^/d{1,4}([-//](/d{1,2}([-//](/d{1,2})?)?)?)?$/,
event.dataTransfer.getData('Text'))"

style="ime-mode:Disabled"

> 如: 2002-9-29<br>
任意中文:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^$/, String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^[/u4E00-/u9FA5]*$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[/u4E00-/u9FA5]*$/, event.dataTransfer.getData('Text'))"

><br>
部分英文:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^[a-e]*$/, String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^[a-e]*$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[a-e]*$/, event.dataTransfer.getData('Text'))"

style="ime-mode:Disabled"

> 范围: a,b,c,d,e<br>
部分中文:<xmp style="display:inline"> </xmp>
<script language=javascript>

function checkChinese(oldLength, obj)

{

var oTR = window.document.selection.createRange()

var reg = /[^一二三四五六七八九十]/g

oTR.moveStart("character", -1*(obj.value.length-oldLength))

oTR.text = oTR.text.replace(reg, "")

}

</script>

<input onkeypress="return false" onkeydown="setTimeout('checkChinese('+this.value.length+','+this.uniqueID+')',
1)"

onpaste = "return regInput(this, /^[一二三四五六七八九十]*$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[一二三四五六七八九十]*$/, event.dataTransfer.getData('Text'))"

> 范围: 一二三四五六七八九十<br>




2.不能展开右键,不能全选,不能复制的实现

<body oncontextmenu="window.event.returnValue=false"

onkeypress="window.event.returnValue=false"

onkeydown="window.event.returnValue=false"

onkeyup="window.event.returnValue=false"

ondragstart="window.event.returnValue=false"

onselectstart="event.returnValue=false">
...

</body>



3.禁止页面正文内容被选取

<body oncontextmenu="return false" ondragstart="return false"
onselectstart ="return false" onselect="document.selection.empty()"
oncopy="document.selection.empty()" onbeforecopy="return

false"onmouseup="document.selection.empty()">



4.避免别人把网页放在框架中

<script language=“javascript”><!--if (self!=top){top.location=self.location;}-->< /script>



5.禁示查看源代码

<frameset>

<frame src="你要保密的文件的URL">

</frameset>



6.关闭输入法

<input style="ime-mode:disabled">



7.禁止图片下载
  在<body......>这里的最后加入:

oncontextmenu="return false" ondragstart="return false" onselectstart="return
false" scroll="auto"



8.禁止缓存
  在HEAD里加入:

<meta http-equiv="Expires" CONTENT="0">

<meta http-equiv="Cache-Control" CONTENT="no-cache">


<meta http-equiv="Pragma" CONTENT="no-cache">

 

你可能感兴趣的:(互联网页面浏览限制实现总结)