`
liuyf8688
  • 浏览: 99802 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

网站开发中经常用到的javaScript技术

阅读更多

1>屏蔽功能类

1.1屏蔽键盘所有键
<scriptlanguage="javascript">
<!--
functiondocument.onkeydown(){
event.keyCode=0;
event.returnvalue=false;
}
-->
</script>

1.2屏蔽鼠标右键

在body标签里加上oncontextmenu=self.event.returnvalue=false

或者

<scriptlanguage="javascript">
<!--
functiondocument.oncontextmenu()
{
returnfalse;
}
-->
</script>

functionnocontextmenu()
{
if(document.all){
event.cancelBubble=true;
event.returnvalue=false;
returnfalse;
}
}

或者

<bodyonmousedown="rclick()"oncontextmenu="nocontextmenu()">

<scriptlanguage="javascript">
<!--
functionrclick()
{
if(document.all){
if(event.button==2){
event.returnvalue=false;
}
}
}
-->
</script>


1.3屏蔽Ctrl+N、Shift+F10、F5刷新、退格键

<scriptlanguage="javascript">
<!--
//屏蔽鼠标右键、Ctrl+N、Shift+F10、F5刷新、退格键
functionwindow.onhelp(){returnfalse}//屏蔽F1帮助
functionKeyDown(){
if((window.event.altKey)&&
((window.event.keyCode==37)||//屏蔽Alt+方向键←
(window.event.keyCode==39))){//屏蔽Alt+方向键→
alert("不准你使用ALT+方向键前进或后退网页!");
event.returnvalue=false;
}

/*注:这还不是真正地屏蔽Alt+方向键,
因为Alt+方向键弹出警告框时,按住Alt键不放,
用鼠标点掉警告框,这种屏蔽方法就失效了。以后若
有哪位高手有真正屏蔽Alt键的方法,请告知。*/

if((event.keyCode==8)&&
(event.srcElement.type!="text"&&
event.srcElement.type!="textarea"&&
event.srcElement.type!="password")||//屏蔽退格删除键
(event.keyCode==116)||//屏蔽F5刷新键
(event.ctrlKey&&event.keyCode==82)){//Ctrl+R
event.keyCode=0;
event.returnvalue=false;
}
if((event.ctrlKey)&&(event.keyCode==78))//屏蔽Ctrl+n
event.returnvalue=false;
if((event.shiftKey)&&(event.keyCode==121))//屏蔽shift+F10
event.returnvalue=false;
if(window.event.srcElement.tagName=="A"&&window.event.shiftKey)
window.event.returnvalue=false;//屏蔽shift加鼠标左键新开一网页
if((window.event.altKey)&&(window.event.keyCode==115)){//屏蔽Alt+F4
window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
returnfalse;}
}
/*另外可以用window.open的方法屏蔽IE的所有菜单
第一种方法:
window.open("你的.htm","","toolbar=no,location=no,directories=no,menubar=no,scrollbars=no,resizable=yes,status=no,top=0,left=0")
第二种方法是打开一个全屏的页面:
window.open("你的.asp","","fullscreen=yes")
*/
//-->
</script>

1.4屏蔽浏览器右上角“最小化”“最大化”“关闭”键

<scriptlanguage=javascript>
functionwindow.onbeforeunload()
{
if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey)
{
window.event.returnvalue="";
}
}
</script>

或者使用全屏打开页面

<scriptlanguage="javascript">
<!--
window.open(www.32pic.com,"32pic","fullscreen=3,height=100,width=400,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no");
-->
</script>

注:在body标签里加上onbeforeunload="javascript:returnfalse"(使不能关闭窗口)

1.5屏蔽F5键

<scriptlanguage="javascript">
<!--
functiondocument.onkeydown()
{
if(event.keyCode==116)
{
event.keyCode=0;
event.cancelBubble=true;
returnfalse;
}
}
-->
</script>

1.6屏蔽IE后退按钮

在你链接的时候用<ahref="javascript:location.replace(url)">

1.7屏蔽主窗口滚动条

在body标签里加上style="overflow-y:hidden"

1.8屏蔽拷屏,不断地清空剪贴板

在body标签里加上onload="setInterval('clipboardData.setData(\'Text\',\'\')',100)"

1.9屏蔽网站的打印功能

<style>
@mediaprint{
*{display:none}
}
</style>

1.10屏蔽IE6.0图片上自动出现的保存图标

方法一:
<METAHTTP-EQUIV="imagetoolbar"CONTENT="no">
方法二:
<imggalleryimg="no">

1.11屏蔽页中所有的script

<noscrript></noscript>

2>表单提交验证类

2.1表单项不能为空

<scriptlanguage="javascript">
<!--
functionCheckForm()
{
if(document.form.name.value.length==0){
alert("请输入您姓名!");
document.form.name.focus();
returnfalse;
}
returntrue;
}
-->
</script>

2.2比较两个表单项的值是否相同

<scriptlanguage="javascript">
<!--
functionCheckForm()
if(document.form.PWD.value!=document.form.PWD_Again.value){
alert("您两次输入的密码不一样!请重新输入.");
document.ADDUser.PWD.focus();
returnfalse;
}
returntrue;
}
-->
</script>

2.3表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等

<scriptlanguage="javascript">
<!--
functionisNumber(String)
{
varLetters="1234567890-";//可以自己增加可输入值
vari;
varc;
if(String.charAt(0)=='-')
returnfalse;
if(String.charAt(String.length-1)=='-')
returnfalse;
for(i=0;i<String.length;i++)
{
c=String.charAt(i);
if(Letters.indexOf(c)<0)
returnfalse;
}
returntrue;
}
functionCheckForm()
{
if(!isNumber(document.form.TEL.value)){
alert("您的电话号码不合法!");
document.form.TEL.focus();
returnfalse;
}
returntrue;
}
-->
</script>


2.4表单项输入数值/长度限定

<scriptlanguage="javascript">
<!--
functionCheckForm()
{
if(document.form.count.value>100||document.form.count.value<1)
{
alert("输入数值不能小于零大于100!");
document.form.count.focus();
returnfalse;
}
if(document.form.MESSAGE.value.length<10)
{
alert("输入文字小于10!");
document.form.MESSAGE.focus();
returnfalse;
}
returntrue;
}
//-->
</script>

2.5中文/英文/数字/邮件地址合法性判断

<SCRIPTLANGUAGE="javascript">
<!--

functionisEnglish(name)//英文值检测
{
if(name.length==0)
returnfalse;
for(i=0;i<name.length;i++){
if(name.charCodeAt(i)>128)
returnfalse;
}
returntrue;
}

functionisChinese(name)//中文值检测
{
if(name.length==0)
returnfalse;
for(i=0;i<name.length;i++){
if(name.charCodeAt(i)>128)
returntrue;
}
returnfalse;
}

functionisMail(name)//E-mail值检测
{
if(!isEnglish(name))
returnfalse;
i=name.indexOf("@");
j=name.lastIndexOf("@");
if(i==-1)
returnfalse;
if(i!=j)
returnfalse;
if(i==name.length)
returnfalse;
returntrue;
}

functionisNumber(name)//数值检测
{
if(name.length==0)
returnfalse;
for(i=0;i<name.length;i++){
if(name.charAt(i)<"0"||name.charAt(i)>"9")
returnfalse;
}
returntrue;
}

functionCheckForm()
{
if(!isMail(form.Email.value)){
alert("您的电子邮件不合法!");
form.Email.focus();
returnfalse;
}
if(!isEnglish(form.name.value)){
alert("英文名不合法!");
form.name.focus();
returnfalse;
}
if(!isChinese(form.cnname.value)){
alert("中文名不合法!");
form.cnname.focus();
returnfalse;
}
if(!isNumber(form.PublicZipCode.value)){
alert("邮政编码不合法!");
form.PublicZipCode.focus();
returnfalse;
}
returntrue;
}
//-->
</SCRIPT>

2.6限定表单项不能输入的字符

<scriptlanguage="javascript">
<!--

functioncontain(str,charset)//字符串包含测试函数
{
vari;
for(i=0;i<charset.length;i++)
if(str.indexOf(charset.charAt(i))>=0)
returntrue;
returnfalse;
}

functionCheckForm()
{
if((contain(document.form.NAME.value,"%\(\)><"))||(contain(document.form.MESSAGE.value,"%\(\)><")))
{
alert("输入了非法字符");
document.form.NAME.focus();
returnfalse;
}
returntrue;
}
//-->
</script>

补充:

//****************************************************************
//* 名  称:DataLength
//* 功 能:计算数据的长度
//* 入口参数:fData:需要计算的数据
//* 出口参数:返回fData的长度(Unicode长度为2,非Unicode长度为1)
//*****************************************************************
function DataLength(fData)
{
var intLength=0
for (var i=0;i<fData.length;i++)
{
if ((fData.charCodeAt(i) < 0) || (fData.charCodeAt(i) > 255))
intLength=intLength+2
else
intLength=intLength+1
}
return intLength
}


//****************************************************************
//* 名  称:DataLength
//* 功 能:计算数据的长度
//* 入口参数:fData:需要计算的数据
//* 出口参数:返回fData的长度(Unicode长度为2,非Unicode长度为1)
//*****************************************************************
function DataLength(fData)
{
var intLength=0
for (var i=0;i<fData.length;i++)
{
if ((fData.charCodeAt(i) < 0) || (fData.charCodeAt(i) > 255))
intLength=intLength+2
else
intLength=intLength+1
}
return intLength
}

//****************************************************************
//* 名  称:IsEmpty
//* 功 能:判断是否为空
//* 入口参数:fData:要检查的数据
//* 出口参数:True:空
//* False:非空
//*****************************************************************
function IsEmpty(fData)
{
return ((fData==null) || (fData.length==0) )
}


//****************************************************************
//* 名  称:IsDigit
//* 功 能:判断是否为数字
//* 入口参数:fData:要检查的数据
//* 出口参数:True:是0到9的数字
//* False:不是0到9的数字
//*****************************************************************
function IsDigit(fData)
{
return ((fData>="0") && (fData<="9"))
}


//****************************************************************
//* 名  称:IsInteger
//* 功 能:判断是否为正整数
//* 入口参数:fData:要检查的数据
//* 出口参数:True:是整数,或者数据是空的
//* False:不是整数
//*****************************************************************
function IsInteger(fData)
{
//如果为空,返回true
if (IsEmpty(fData))
return true
if ((isNaN(fData)) || (fData.indexOf(".")!=-1) || (fData.indexOf("-")!=-1))
return false

return true
}

//****************************************************************
//* 名  称:IsEmail
//* 功 能:判断是否为正确的Email地址
//* 入口参数:fData:要检查的数据
//* 出口参数:True:正确的Email地址,或者空
//* False:错误的Email地址
//*****************************************************************
function IsEmail(fData)
{
if (IsEmpty(fData))
return true
if (fData.indexOf("@")==-1)
return false
var NameList=fData.split("@");
if (NameList.length!=2)
return false
if (NameList[0].length<1 )
return false
if (NameList[1].indexOf(".")<=0)
return false
if (fData.indexOf("@")>fData.indexOf("."))
return false
if (fData.indexOf(".")==fData.length-1)
return false

return true
}

//****************************************************************
//* 名  称:IsPhone
//* 功 能:判断是否为正确的电话号码(可以含"()"、"()"、"+"、"-"和空格)
//* 入口参数:fData:要检查的数据
//* 出口参数:True:正确的电话号码,或者空
//* False:错误的电话号码
//* 错误信息:
//*****************************************************************
function IsPhone(fData)
{
var str;
var fDatastr="";
if (IsEmpty(fData))
return true
for (var i=0;i<fData.length;i++)
{
str=fData.substring(i,i+1);
if (str!="(" && str!=")" && str!="(" && str!=")" && str!="+" && str!="-" && str!=" ")
fDatastr=fDatastr+str;
}
//alert(fDatastr);
if (isNaN(fDatastr))
return false
return true
}

//****************************************************************
//* 名  称:IsPlusNumeric
//* 功 能:判断是否为正确的正数(可以含小数部分)
//* 入口参数:fData:要检查的数据
//* 出口参数:True:正确的正数,或者空
//* False:错误的正数
//* 错误信息:
//*****************************************************************
function IsPlusNumeric(fData)
{
if (IsEmpty(fData))
return true
if ((isNaN(fData)) || (fData.indexOf("-")!=-1))
return false
return true
}

//****************************************************************
//* 名  称:IsNumeric
//* 功 能:判断是否为正确的数字(可以为负数,小数)
//* 入口参数:fData:要检查的数据
//* 出口参数:True:正确的数字,或者空
//* False:错误的数字
//* 错误信息:
//*****************************************************************
function IsNumeric(fData)
{
if (IsEmpty(fData))
return true
if (isNaN(fData))
return false

return true
}


//****************************************************************
//* 名  称:IsIntegerInRange
//* 功 能:判断一个数字是否在指定的范围内
//* 入口参数:fInput:要检查的数据
//* fLower:检查的范围下限,如果没有下限,请用null
//* fHigh:检查的上限,如果没有上限,请用null
//* 出口参数:True:在指定的范围内
//* False:超出指定范围
//*****************************************************************
function IsIntegerInRange(fInput,fLower,fHigh)
{
if (fLower==null)
return (fInput<=fHigh)
else if (fHigh==null)
return (fInput>=fLower)
else
return ((fInput>=fLower) && (fInput<=fHigh))
}

分享到:
评论

相关推荐

    网站开发经常用到的查询手册

    网站开发是信息技术领域中的核心部分,涉及到众多技术的综合运用,包括HTML、CSS、JavaScript等。这些技术共同构建了互联网的基石。以下是一些关于这些技术的重要知识点,以及相关手册的详细解读: 1. **HTML**(超...

    应用javascript开发的班级网站

    在这个“应用javascript开发的班级网站”项目中,我们可以深入探讨JavaScript在构建班级网站中的核心作用和相关技术。 首先,JavaScript允许我们创建响应式的用户界面。班级网站可能包含各种互动元素,如导航菜单、...

    Web开发中经常用到分享功能

    在Web开发中,分享功能是不可或缺的一部分,它允许用户将网站内容轻松地传播到其他平台,如社交媒体、电子邮件或即时通讯应用。这个简单的分享功能涉及的技术和步骤多种多样,涵盖前端交互、后端处理以及与第三方...

    毕业设计论文-技术在网站开发设计中的研究与开发一篇计算机专业优秀毕业论文.zip

    这篇毕业设计论文的主题聚焦于“技术在网站开发设计中的研究与开发”,这涵盖了广泛的IT领域知识,特别是关于网站开发和设计的关键技术。以下是对这些关键知识点的详细解释: 1. **网站开发流程**:网站开发通常...

    JavaScript教学网站开发实现

    JavaScript教学网站开发实现是一个复杂而细致的过程,它涵盖了前端、后端以及数据库等多个技术领域。在为广大学习者提供在线JAVA教学资源的平台上,JavaScript作为主要的客户端脚本语言,发挥着至关重要的作用。以下...

    javascript 个人网站

    综上所述,“javascript 个人网站”项目涵盖了JavaScript在网页开发中的多种应用场景,从基础的DOM操作到复杂的动画效果和用户交互,这些都是现代Web开发不可或缺的知识点。通过学习和实践这些技术,开发者能够创建...

    我在做网站的时候经常用到的东西,

    在构建网站的过程中,正则表达式、网站设计与开发的经验是至关重要的技术组成部分。下面将分别探讨这些知识点。 首先,正则表达式(Regular Expression)是处理文本的强大工具,尤其在验证用户输入、搜索和替换数据...

    静态网站导航javascript

    标题 "静态网站导航javascript" 暗示了我们的话题集中在使用JavaScript来构建和增强静态网站的导航功能。...随着技术的发展,JavaScript在Web开发中的地位越来越重要,掌握其在导航设计中的应用是提升网站质量的关键。

    人类的坚实的基础的开发的过程用到了pf技术

    综合以上分析,我们可以推断这个话题可能涉及使用JavaScript技术(可能是PWA或者特定的JS框架如React、Vue或Angular)进行Web应用开发,并结合`jspdf`库来处理PDF文档。这样的开发过程可能包括创建交互式的用户界面...

    简单的rss阅读器用到的技术有JavaScript xml css

    【标题】:RSS阅读器开发技术详解 - JavaScript、XML与CSS的应用 【描述】:RSS(Really Simple Syndication)是一种内容聚合格式,常用于新闻、博客等网站,以方便用户订阅和获取最新信息。在开发一个简单的RSS...

    ASP.NET 网站开发中常用到的广告效果代码

    在***网站开发中,为满足客户需求,开发者...总结来说,***网站开发中常用的广告效果代码是一个涉及前端技术的综合应用,通过上述知识的综合运用,开发者能够实现形式多样、用户体验良好的广告展示,以满足项目需求。

    基于ASP技术的WEB网站的设计与开发.pdf

    文章详细介绍了如何使用ASP技术连接数据库、生成网页以及模块设计,为读者提供了一个动态网站开发的完整流程。本文将从ASP技术、网站设计、数据库连接、网页生成与模块设计等方面展开知识点的详细说明。 ASP技术: ...

    UI设计用到的技术

    【UI设计用到的技术】和前端设计是两个密切相关但又有区别的领域。UI设计主要关注用户界面的美观和用户体验,而前端设计则涉及到将设计转化为实际网页或应用程序的过程。 一、UI设计 UI设计(User Interface Design...

    国开电大《WEB开发基础》形考任务1答案实验1实验1:电商网站前端页面内容编写(16分)

    为了提升用户体验,前端开发通常会用到JavaScript来实现动态效果和交互功能,例如: 1. 搜索功能:实时反馈搜索结果,提供筛选和排序选项。 2. 购物车:添加、删除商品,计算总价,显示购物车状态。 3. 滚动加载:当...

    使用javascript做的动态网站

    6. **响应式设计**:确保网站在不同设备和屏幕尺寸上都能正常工作,可能用到媒体查询(Media Queries)等技术。 7. **最佳实践和优化**:包括代码模块化、性能优化、错误处理等,以提高网站质量和用户体验。 了解...

    求一份网页设计结课大作业,要求用到html,css,javascript,的知识

    根据给定文件中的标题、描述、标签以及部分内容,我们可以总结出以下相关知识点: ### 1. HTML5期末考核大作业的概述 - **目标对象**:面向大学生的HTML5期末考核大作业,适用于网页设计课程。 - **技术要求**:...

    结合CSS和Javascript技术实现动态选项卡菜单.pdf

    本文介绍了结合CSS和Javascript技术实现动态选项卡菜单的方法。通过使用CSS和Javascript,可以设计出许多个性化的网页动态效果,而这些效果规整、简洁、易于维护,已经广泛应用于网页的设计开发当中。 在互联网时代...

    JavaScript实例 菜单特效

    “Flash菜单效果”虽然提及,但在现代Web开发中,由于Flash技术的逐渐淘汰,JavaScript结合CSS3动画可以实现类似的动态效果,如平滑过渡、淡入淡出等,同时保持更好的兼容性和性能。 “推拉式菜单”常用于移动设备...

    JavaScript调色板.rar

    JavaScript是一种广泛应用于...通过这个JavaScript调色板,开发者不仅可以学习如何在网页上创建互动的调色工具,还可以深入理解JavaScript与DOM交互、颜色处理以及UI动态更新等技术,对于提升网页开发技能非常有帮助。

    ASP+Access+Dreamweaver动态网站开发从入门到实践

    在动态网站开发中,Access数据库常用于存储和管理网站的数据,如用户信息、文章内容等。通过ADO(ActiveX Data Objects),我们可以从ASP代码中连接并操作Access数据库,执行SQL语句进行数据的增删改查。 ...

Global site tag (gtag.js) - Google Analytics