160229-01、web页面常用功能js实现

web页面常用功能js实现

 

1.网页未加载时弹出新窗口

<body onunload="window.open('http://www.a68.cn');"></body>

2.浏览网页时鼠标不能点击右键

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

3.设置回车键

<form id="myform" action=""> 

  ...... 

  <input type="button" id="submit" value="submit" onkeypress="pressEnter()"/> 

</form> 

js代码: 

function pressEnter() 

  if(window.event.keyCode==13) loginnav(); 

}

参考站点:http://491729.blog.51cto.com/481729/111245

用字符串的length实现限制文本框长度

本例使用JS字符串的length属性来限制一个文本框内文本的长度。大致思路如下:每当用户在文本框内输入值的时候(键盘敲击事件),都触发一个名为check的函数,它会获得文本框内字符的长度,并检查该长度是否在5-10之间。如果不是则给出对应的警告。且当输入字符多余10个的时候会自动去掉长出的部分。

实例JavaScript代码

<script type="text/javascript">function check(){ var str = document.getElementById("test").value; if(str.length < 5){  update("至少输入5个字符!"); }else if(str.length > 10){  update("不能超过10个字符!");  str = str.substring(0,10);  document.getElementById("test").value = str.substring(0,10); }else{  update("有效的用户名。") }}function update(word){ document.getElementById("feedback").innerHTML = word;}</script>HTML代码

<p>  <label for="test">帐号:</label>  <input type="text" name="test" id="test" onkeypress="check()" maxlength="15" />  <span id="feedback"></span></p>

-------------------------------------------------

JavaScript date对象

-------------------------------------------------

<script type="text/javascript"> var today = new Date(); 

//新建一个Date对象 

var todayStr = today.toString(); //把日期转化为字符串 

var todayLocal = today.toLocaleString();  //转换为本地字符串(按本地格式化) 

var date = today.getDate(); //查询当月日期 得到X天

var day = today.getDay(); //查询当前星期几 

var month = today.getMonth(); //查询月份 得到X月

var year = today.getFullYear();//查询年份 得到X年

</script>

JavaScript Date对象应用实例——时钟代码

本代码转自w3schools.com。

<script type="text/javascript">

function startTime(){var today=new Date();

var h=today.getHours();

var m=today.getMinutes();

var s=today.getSeconds();//当数字小于10的时候在前面加一个0

m=checkTime(m);

s=checkTime(s);

document.getElementById('clock').innerHTML=h+":"+m+":"+s;//每隔500毫秒重新执行一次

startTimet=setTimeout('startTime()',500);}

function checkTime(i){if (i<10)  {  i="0" + i;  }return i;}

</script> 

9:54:53

时、分、秒

访问时分秒也是十分简单的,小时为getHours,分为getMinutes,秒为getSeconds,还有毫秒getMilliseconds。

today.getHours()

today.getminutes()

today.getSeconds()

today.getMilliseconds()

todaygetTimezoneOffset()  //时差(分钟为单位)

date对象设置(set)方法

设置Date对象的年、月、日等等属性。

只需要使用setDate就可以设置现在是本月的几号。setMonth设置月份,setFullYear是以四位的方式设置年份。setHours设置小时,setMinutes设置分钟,setSeconds设置秒,setMilliseconds则设置毫秒。

JavaScript代码

<script type="text/javascript"> var today = new Date(); //新建一个Date对象 today.setFullYear(1); 

today.setMonth(1); 

today.setHours(1); 

today.setDate(1); t

oday.setMinutes(1); 

today.setSeconds(1); 

today.setMilliseconds(1);</script>

 date对象转换(to)方法:

将Date对象转换为字符串

Date对象的toString方法可以把它转换为字符串,从而可以很方便地显示出来或者是做进一步的处理。点击下面的按钮就可以看到toString的结果了。

today.toString() 

更有用的一个方法是toLocaleString,它将Date对象转换成符合本地习惯的字符串。

today.toLocaleString() 

toDateString与toLocaleDateString则将Date对象转换为字符串之后只保留日期部分。相对的,toTimeString和toLocaleTimeString则保留时间(时、分、秒)部分。

源代码 (一般浏览器不支持)

toSource方法把Date对象转换为源代码的形式,个人感觉没什么用。

today.toSource() 

JavaScript数组

-------------------------------------------------

创建一个JavaScript数组

<script type="text/javascript">

//笨方法

 var arr = new Array("HTML","CSS","JavaScript","DOM");

//省事一点的方法

 var arr = ["HTML","CSS","JavaScript","DOM"];

</script>

与字符串对象一样,数组也有一个length属性,不过它的意思是数组包含元素的个数。点击下面的按钮可以看到arr的长度为4。

alert(arr.length)

数组join方法

数组对象的join方法可以把数组的几个元素连接成一个字符串。

arr.join()

数组concat方法

数组对象的concat方法可以把两个或者多个数组连接起来,组成一个新的数组。下面是一段使用了concat方法的JS代码。

JavaScript代码

<script type="text/javascript"> var arr = ["HTML","CSS","JavaScript","DOM"]; var arr2 = ["ASP.NET","PHP","J2EE","Python","Ruby"];

var arrNew = arr.concat(arr2); 

var arr3 =  ["1","2","3","4"]; 

var arrNewNew = arr.concat(arr2,arr3);</script>

concat方法也可以接受多个参数。例如, var arrNewNew = arr.concat(arr2,arr3);这个语句将arr与arr2与arr3一起连接成一个新的数组,点击下面的按钮来查看这个新的数组。

arrNewNew 

arrNewNew.length 

数组sort方法

数组对象的sort方法可以按照一定的顺序把数组元素重新排列起来。通常情况下,都是按照字幕顺序排列。

JavaScript代码

<script type="text/javascript"> 

var arr = ["HTML","CSS","JavaScript","DOM"]; 

var arr2 =  [4,3,2,1]; 

var arr3 =  [40,300,2000,10000];

</script>

实例JavaScript数组代码

下面是一段简单的使用数组的JS代码,可以点击后面的按钮来观察各个变量的值。

<script type="text/javascript"> 

var arr = new Array("HTML","CSS","JavaScript","DOM"); 

var arr2 = new Array("ASP.NET","PHP","J2EE","Python","Ruby"); 

var joinArr = arr.join(); 

var bigArr = arr.concat(arr2); 

var sortArr = bigArr.sort();

</script>

sort方法的参数

sort方法可以接受一个参数,这个参数的类型是函数,它也就是排序函数了。我们可以使用它来进行自定义的排序方式。例如,我们可以让上面的数字数组按照大小的方式排序。看下面的JS代码:

<script type="text/javascript"> var arr3 =  [40,300,2000,10000]; function compare(a,b) {return a - b;}</script>arr3.sort(compare) 

点击上面的按钮可以发现,当我们使用自定义的compare函数进行排序的时候,10000这个最大的数字已经顺利地排到最后了。从代码中我们可以观察出来,sort是根据排序函数的返回值是正还是负来排序的。

数组push与pop方法

数组对象的push与pop方法分别在数组的尾部添加与删除元素。push方法有一个参数,也就是要添加到数组尾部的元素,而pop方法则没有参数,而是返回从数组尾部删除的元素。见下面的JS代码。

JavaScript代码

<script type="text/javascript"> 

var arr = ["HTML","CSS","JavaScript","DOM"]; 

var arr2 =  [1,2,3,4]; arr.push("PHP"); 

var popped = arr2.pop();

</script>

数组shift与unshift方法

数组对象的unshift与shift方法分别在数组的头部添加和删除一个元素.

JavaScript代码

<script type="text/javascript"> 

var arr = ["HTML","CSS","JavaScript","DOM"]; 

var arr2 =  [1,2,3,4]; arr.unshift("PHP"); 

var shifted = arr2.shift();

</script>

数组slice方法

数组对象的slice方法从数组中分离出一个子数组,功能类似于字符串对象的substring方法。为了演示方便,我们创建一个值为[0,1,2,3,4,5,6,7,8,9,0]的数组。这样就形成了位置和值的对应,即,arr[0]的值恰好为0。

点击下面的按钮进行测试,可以发现,slice(0,3)会返回[0,1,2],也就是说,只返回位置0、1和2,而不包括3。由此我们可以知道,传递给slice的两个参数分别为,起始字符的位置,结束字符的位置+1。

与字符串的substring方法类似,数组的slice方法也可以省略第二个参数,表示一直到数组结束。见下面的实例。

arr.slice(3) 

arr.slice(3)表示从数组的第三个元素开始,一直到数组结尾的子数组。我们可以推测,arr.slice(0)将会返回数组本身。可以点击下面的按钮验证。

arr.slice(0) 

-------------------------------------------------

JavaScript 数学对象

-------------------------------------------------

JavaScript中有专门处理数学问题的Math对象。 

实例JavaScript Math代码

<script type="text/javascript"> var num = Math.PI; var rNum = Math.round(num);//四舍五入</script>我们首先吧Math.PI的值保存在num中,这是一个JS内置的常量,可以点击下面的按钮来查看它的值。

alert(num) 

rNum则是num经过四舍五入的值。

alert(rNum) 

random方法则产生一个0-1之间的随机值。试着多点击几次下面的按钮,可以发现得到的数字会不断改变。

random方法则产生一个0-1之间的随机值。试着多点击几次下面的按钮,可以发现得到的数字会不断改变。

alert(Math.random())

JavaScript的Math对象计算器

[url]http://www.cainiao8.com/web/js_examples/09_math_jisuqnqi.html[/url]

-------------------------------------------------

用javascript修改html元素的class

-------------------------------------------------

实例JavaScript代码

需要注意的是在JavaScript中,如果要修改一个元素的class属性,一定要写为className,因为class是JavaScript的保留字。

<script type="text/javascript"> 

function over(){  

var para = document.getElementById("testPara").className = "testOver";  } function out(){  var para = document.getElementById("testPara").className = "testNormal";  } </script>

HTML代码

本例只需要一个段落,并且给它设置了默认的class属性“testNormal”,而鼠标划过和划出会分别触发上面的两个JavaScript函数,从而改变该段落自身的class属性。

<p id="testPara" class="testNormal" 我是示例段落,鼠标滑过我,就可以改变我的class属性,从而改变应用的CSS规则。    </p>

CSS

CSS代码设置了两个测试用的样式。

.testNormal {  border:1px solid black; }.testOver { background:#999999; border:1px solid black;  font-weight:bold;  padding:3em; }

-------------------------------------------------

JavaScript重定向

-------------------------------------------------

使用JavaScript可以将用户导向一个特定的地址,并且不同的方法会对浏览器的历史记录有不同的影响。

实例JavaScript代码

本例定义了两个JavaScript函数,功能都是重定向到首页,但是第一个函数采用的是直接给href赋值的方式,第二个使用的是replace方法。具体请看下面的代码:

<script type="text/javascript"> function goBack(){  location.href = "[url]http://www.cainiao8.com/[/url]"; } function goBackRep(){  location.replace("[url]http://www.cainiao8.com/[/url]"); }</script>

HTML代码

<p> 点击后面的按钮就可以使得页面转向首页,    可以点击浏览器的后退按钮返回本页。    使用的方法是直接给location.href赋值。</p><button return false;" value="重定向到首页"> 重定向到首页</button><p> 点击后面的按钮就同样会跳转到首页,但是 由于是使用location.replace的方法,所以不能 通过浏览器的后退按钮返回本页。</p><button return false;" value="重定向到首页(不能返回)" >

-------------------------------------------------

JavaScript对象当作关联数组

-------------------------------------------------

JavaScript的对象不仅仅可以使用“.propertyName” 来访问对象的属性,也可以使用“[propertyName]”来访问对象的属性。

实例JavaScript代码

使用关联数组的方法访问对象的属性比使用传统的点“.propertyName”要灵活得多。因为我们可以在[]里填入一个变量,而不是必须事先制定好要访问的属性名。例如下面的这段代码中,我们通过select元素的name属性来设置具体要访问style的哪个属性(本例中为背景色),这样,这个函数就可以用来设置不同的CSS属性了。

<script type="text/javascript">var d = document.getElementById("content");function setProperty(){ var sel = document.getElementById("selectColor"); var propertyValue = sel.options[sel.selectedIndex].value; var propertyName = document.getElementById("selectColor").name; d.style[propertyName] = propertyValue;}</script>HTML代码

本例的HTML代码比较简单,一个select元素用来罗列出来可选的背景色。而按钮则负责触发事件,调用函数。

<select id="selectColor" name="backgroundColor">    <option value="aqua">aqua</option>    <option value="black">black</option>    <option value="blue">blue</option>    <option value="fuchsia">fuchsia</option>    <option value="gray">gray</option>    <option value="green">green</option>    <option value="lime">lime</option>    <option value="maroon">maroon</option>    <option value="navy">navy</option>    <option value="olive">olive</option>    <option value="purple">purple</option>    <option value="red">red</option>    <option value="silver">silver</option>    <option value="teal">teal</option>    <option value="white">white</option>    <option value="yellow">yellow</option></select> <button return false;">设置背景颜色</button>效果

选择颜色后点击按钮“设置背景颜色”。

原文地址:https://www.cnblogs.com/zrbfree/p/5228816.html