文档视界 最新最全的文档下载
当前位置:文档视界 › 开发中经常用到的javaScript技术整理

开发中经常用到的javaScript技术整理

开发中经常用到的javaScript技术整理
开发中经常用到的javaScript技术整理

一、验证类

1、数字验证内

1.1 整数

1.2 大于0的整数(用于传来的ID的验证)

1.3 负整数的验证

1.4 整数不能大于iMax

1.5 整数不能小于iMin

2、时间类

2.1 短时间,形如(13:04:06)

2.2 短日期,形如(2003-12-05)

2.3 长时间,形如(2003-12-05 13:04:06)

2.4 只有年和月。形如(2003-05,或者2003-5)

2.5 只有小时和分钟,形如(12:03)

3、表单类

3.1 所有的表单的值都不能为空

3.2 多行文本框的值不能为空。

3.3 多行文本框的值不能超过sMaxStrleng

3.4 多行文本框的值不能少于sMixStrleng

3.5 判断单选框是否选择。

3.6 判断复选框是否选择.

3.7 复选框的全选,多选,全不选,反选

3.8 文件上传过程中判断文件类型

4、字符类

4.1 判断字符全部由a-Z或者是A-Z的字字母组成

4.2 判断字符由字母和数字组成。

4.3 判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母

4.4 字符串替换函数.Replace();

5、浏览器类

5.1 判断浏览器的类型

5.2 判断ie的版本

5.3 判断客户端的分辨率

6、结合类

6.1 email的判断。

6.2 手机号码的验证

6.3 身份证的验证

二、功能类

1、时间与相关控件类

1.1 日历

1.2 时间控件

1.3 万年历

1.4 显示动态显示时钟效果(文本,如OA中时间)

1.5 显示动态显示时钟效果(图像,像手表)

2、表单类

2.1 自动生成表单

2.2 动态添加,修改,删除下拉框中的元素

2.3 可以输入内容的下拉框

2.4 多行文本框中只能输入iMax文字。如果多输入了,自动减少到iMax个文字(多用于短信发送)

3、打印类

3.1 打印控件

4、事件类

4.1 屏蔽右键

4.2 屏蔽所有功能键

4.3 -->和<-- F5 F11,F9,F1

4.4 屏蔽组合键ctrl+N

5、网页设计类

5.1 连续滚动的文字,图片(注意是连续的,两段文字和图片中没有空白出现)

5.2 html编辑控件类

5.3 颜色选取框控件

5.4 下拉菜单

5.5 两层或多层次的下拉菜单

5.6 仿IE菜单的按钮。(效果如https://www.docsj.com/doc/cc10877338.html,的导航栏目)

5.7 状态栏,title栏的动态效果(例子很多,可以研究一下)

5.8 双击后,网页自动滚屏

6、树型结构。

6.1 asp+SQL版

6.2 asp+xml+sql版

6.3 java+sql或者java+sql+xml

7、无边框效果的制作

8、连动下拉框技术

9、文本排序

一、验证类

1、数字验证内

1.1 整数

/^(-|\+)?\d+$/.test(str)

1.2 大于0的整数(用于传来的ID的验证)

/^\d+$/.test(str)

1.3 负整数的验证

/^-\d+$/.test(str)

2、时间类

2.1 短时间,形如(13:04:06)

function isTime(str)

{

var a = str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/);

if (a == null) {alert('输入的参数不是时间格式'); return false;}

if (a[1]>24 || a[3]>60 || a[4]>60)

{

alert("时间格式不对");

return false

}

return true;

}

2.2 短日期,形如(2003-12-05)

function strDateTime(str)

{

var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);

if(r==null)return false;

var d= new Date(r[1], r[3]-1, r[4]);

return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);

}

2.3 长时间,形如(2003-12-05 13:04:06)

function strDateTime(str)

{

var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;

var r = str.match(reg);

if(r==null)return false;

var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);

return

(d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.g etMinutes()==r[6]&&d.getSeconds()==r[7]);

}

2.4 只有年和月。形如(2003-05,或者2003-5)

2.5 只有小时和分钟,形如(12:03)

3、表单类

3.1 所有的表单的值都不能为空

3.2 多行文本框的值不能为空。

3.3 多行文本框的值不能超过sMaxStrleng

3.4 多行文本框的值不能少于sMixStrleng

3.5 判断单选框是否选择。

3.6 判断复选框是否选择.

3.7 复选框的全选,多选,全不选,反选

3.8 文件上传过程中判断文件类型

4、字符类

4.1 判断字符全部由a-Z或者是A-Z的字字母组成

4.2 判断字符由字母和数字组成。

4.3 判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母

/^([a-zA-z_]{1})([\w]*)$/g.test(str)

4.4 字符串替换函数.Replace();

5、浏览器类

5.1 判断浏览器的类型

window.navigator.appName

5.2 判断ie的版本

window.navigator.appVersion

5.3 判断客户端的分辨率

window.screen.height; window.screen.width;

6、结合类

6.1 email的判断。

function ismail(mail)

{

return(new

RegExp(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/).test(mail)); }

6.2 手机号码的验证

6.3 身份证的验证

function isIdCardNo(num)

{

if (isNaN(num)) {alert("输入的不是数字!"); return false;}

var len = num.length, re;

if (len == 15)

re = new RegExp(/^(\d{6})()?(\d{2})(\d{2})(\d{2})(\d{3})$/);

else if (len == 18)

re = new RegExp(/^(\d{6})()?(\d{4})(\d{2})(\d{2})(\d{3})(\d)$/);

else {alert("输入的数字位数不对!"); return false;}

var a = num.match(re);

if (a != null)

{

if (len==15)

{

var D = new Date("19"+a[3]+"/"+a[4]+"/"+a[5]);

var B = D.getYear()==a[3]&&(D.getMonth()+1)==a[4]&&D.getDate()==a[5];

}

else

{

var D = new Date(a[3]+"/"+a[4]+"/"+a[5]);

var B = D.getFullYear()==a[3]&&(D.getMonth()+1)==a[4]&&D.getDate()==a[5];

}

if (!B) {alert("输入的身份证号"+ a[0] +" 里出生日期不对!"); return false;} }

return true;

}

3.7 复选框的全选,多选,全不选,反选

全选







全选






function checkAll(str)

{

var a = document.getElementsByName(str);

var n = a.length;

for (var i=0; i

a[i].checked = window.event.srcElement.checked;

}

function checkItem(str)

{

var e = window.event.srcElement;

var all = eval("document.hrong."+ str);

if (e.checked)

{

var a = document.getElementsByName(https://www.docsj.com/doc/cc10877338.html,);

all.checked = true;

for (var i=0; i

{

if (!a[i].checked){ all.checked = false; break;}

}

}

else all.checked = false;

}

3.8 文件上传过程中判断文件类型

画图:

id=S

style="LEFT: 0px; WIDTH: 392px; TOP: 0px; HEIGHT: 240px"

height=240

width=392

classid="clsid:369303C2-D7AC-11D0-89D5-00A0C90833E6">

S.DrawingSurface.ArcDegrees(0,0,0,30,50,60);

S.DrawingSurface.ArcRadians(30,0,0,30,50,60);

S.DrawingSurface.Line(10,10,100,100);

写注册表:

var WshShell = Wscrīpt.CreateObject("Wscrīpt.Shell");

WshShell.RegWrite ("HKCU\\Software\\ACME\\FortuneTeller\\", 1, "REG_BINARY"); WshShell.RegWrite ("HKCU\\Software\\ACME\\FortuneTeller\\MindReader", "Goocher!", "REG_SZ");

var bKey = WshShell.RegRead ("HKCU\\Software\\ACME\\FortuneTeller\\");

Wscrīpt.Echo (WshShell.RegRead ("HKCU\\Software\\ACME\\FortuneTeller\\MindReader")); WshShell.RegDelete ("HKCU\\Software\\ACME\\FortuneTeller\\MindReader");

WshShell.RegDelete ("HKCU\\Software\\ACME\\FortuneTeller\\");

WshShell.RegDelete ("HKCU\\Software\\ACME\\");

TABLAE相关(客户端动态增加行列)

function numberCells() {

var count=0;

for (i=0; i < document.all.mytable.rows.length; i++) {

for (j=0; j < document.all.mytable.rows(i).cells.length; j++) {

document.all.mytable.rows(i).cells(j).innerText = count;

count++;

}

}

}

    
    
    

1.身份证严格验证:

var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"}

function cidInfo(sId){

var iSum=0

var info=""

if(!/^\d{17}(\d|x)$/i.test(sId))return false;

sId=sId.replace(/x$/i,"a");

if(aCity[parseInt(sId.substr(0,2))]==null)return "Error:非法地区";

sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2));

var d=new Date(sBirthday.replace(/-/g,"/"))

if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))return "Error:非法生日"; for(var i = 17;i>=0;i --) iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11)

if(iSum%11!=1)return "Error:非法证号";

return aCity[parseInt(sId.substr(0,2))]+","+sBirthday+","+(sId.substr(16,1)%2?"男":"女")

}

document.write(cidInfo("380524198002300016"),"
");

document.write(cidInfo("340524************"),"
")

document.write(cidInfo("340524************"),"
")

document.write(cidInfo("340524************"),"
");

2.验证IP地址

function isip(s){

var check=function(v){try{return (v<=255 && v>=0)}catch(x){return false}};

var re=s.split(".")

return (re.length==4)?(check(re[0]) && check(re[1]) && check(re[2]) && check(re[3])):false

}

var s="202.197.78.129";

alert(isip(s))

3.加sp1后还能用的无边框窗口!!

Chromeless Window

/*--- Special Thanks For andot ---*/

/*

This following code are designed and writen by Windy_sk

You can use it freely, but u must held all the copyright items!

*/

/*--- Thanks For andot Again ---*/

var CW_width = 400;

var CW_height = 300;

var CW_top = 100;

var CW_left = 100;

var CW_url = "/";

var New_CW = window.createPopup();

var CW_Body = New_CW.document.body;

var content = "";

var CSStext = "margin:1px;color:black; border:2px outset;border-style:expression(onmouseout=onmouseup=function(){this.style.borderStyle='outs et'},

ōnmousedown=function(){if(event.button!=2)this.style.borderStyle='inset'});background-color:bu ttonface;width:16px;height:14px;font-size:12px;line-height:11px;cursor:Default;";

//Build Window

include.startDownload(CW_url, function(source){content=source});

function insert_content(){

var temp = "";

CW_Body.style.overflow = "hidden";

CW_Body.style.backgroundColor = "white";

CW_Body.style.border = "solid black 1px";

content = content.replace(/]*)>/g,""); temp += "

";

temp += "

";

temp += "

";

temp += "

Chromeless Window For IE6 SP1";

temp += "?";

temp += "0";

temp += "1";

temp += "x";

temp += "

";

temp += "

";

temp += content;

temp += "

";

temp += "

";

CW_Body.innerHTML = temp;

}

setTimeout("insert_content()",1000);

var if_max = true;

function show_CW(){

window.moveTo(10000, 10000);

if(if_max){

New_CW.show(CW_top, CW_left, CW_width, CW_height);

if(typeof(New_CW.document.all.include)!="undefined"){

New_CW.document.all.include.style.width = CW_width;

New_CW.document.all.Max.innerText = "1";

}

}else{

New_CW.show(0, 0, screen.width, screen.height);

New_CW.document.all.include.style.width = screen.width;

}

}

window.onfocus = show_CW;

window.onresize = show_CW;

// Move Window

var drag_x,drag_y,draging=false

function drag_move(e){

if (draging){

New_CW.show(e.screenX-drag_x, e.screenY-drag_y, CW_width, CW_height);

return false;

}

}

function drag_down(e){

if(e.button==2)return;

if(New_CW.document.body.offsetWidth==screen.width && New_CW.document.body.offsetHeight==screen.height)return;

drag_x=e.clientX;

drag_y=e.clientY;

draging=true;

e.srcElement.setCapture();

}

function drag_up(e){

draging=false;

e.srcElement.releaseCapture();

if(New_CW.document.body.offsetWidth==screen.width && New_CW.document.body.offsetHeight==screen.height) return;

CW_top = e.screenX-drag_x;

CW_left = e.screenY-drag_y;

}

电话号码的验证

要求:

(1)电话号码由数字、"("、")"和"-"构成

(2)电话号码为3到8位

(3)如果电话号码中包含有区号,那么区号为三位或四位

(4)区号用"("、")"或"-"和其他部分隔开

(5)移动电话号码为11或12位,如果为12位,那么第一位为0

(6)11位移动电话号码的第一位和第二位为"13"

(7)12位移动电话号码的第二位和第三位为"13"

根据这几条规则,可以与出以下正则表达式:

(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)

function PhoneCheck(s) {

var str=s;

var

reg=/(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/ alert(reg.test(str));

}

具有在输入非数字字符不回显的效果,即对非数字字符的输入不作反应。

function numbersonly(field,event){

var key,keychar;

if(window.event){

key = window.event.keyCode;

}

else if (event){

key = event.which;

}

else{

return true

}

keychar = String.fromCharCode(key);

if((key == null)||(key == 0)||(key == 8)||(key == 9)||(key == 13)||(key == 27)){

return true;

}

else if(("0123456789.").indexOf(keychar)>-1){

window.status = "";

return true;

}

else {

window.status = "Field excepts numbers only";

return false;

}

}

验证ip

str=document.RegExpDemo.txtIP.value;

if(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/.test(str)==false)

{

window.alert('错误的IP地址格式');

document.RegExpDemo.txtIP.select();

document.RegExpDemo.txtIP.focus();

return;

}

if(RegExp.$1<1 || RegExp.$1>254||RegExp.$2<0||RegExp.$2>254||RegExp.$3<0||RegExp.$3>254||RegExp.$4<1| |RegExp.$4>254)

{

window.alert('错误的IP地址');

document.RegExpDemo.txtIP.select();

document.RegExpDemo.txtIP.focus();

return;

}

//剔除如010.020.020.03 前面的0

var str=str.replace(/0(\d)/g,"$1");

str=str.replace(/0(\d)/g,"$1");

window.alert(str);

Javascript弹窗代码大全(收集)

弹窗代码大全(收集) 以下包括强制弹窗 24小时IP弹窗延时弹窗退弹等 我们使用cookie来控制一下就可以了。 首先,将如下代码加入主页面html的区: 然后,用(注意不是openwin而是loadpop啊!)替换主页面中原有的这一句即可。你可以试着刷新一下这个页面或重新进入该页面,窗口再也不会弹出了。真正的pop-only-once! 写到这里弹出窗口的制作和应用技巧基本上算是完成了,俺也累坏了,一口气说了这么多,希望对正在制作网页的朋友有所帮助俺就非常欣慰了。 需要注意的是,js脚本中的的大小写最好前后保持一致。 3.一个强制弹窗代码 一个强制弹窗代码 /**

Javascript综合应用小案例

按需求弄了一个取词以及标红的小应用。 先上demo :/ 很多平时常用的东西,都用上了,所以拿出来说说。 一、代码 View Code 以上是所有js代码,比较长,下面将列举一些比较突出的点(望高人多多指点)。 二、代码分析 1.获取文本 getSelectionText: function(){ if(window.getSelection) { return window.getSelection().toString(); } else if(document.selection && { return; } return ''; } 这个在以前(JavaScript操控光标,你会么?)的文章里也说过,就不赘述了。 2.创建控制框 createBtn: function(evt){ var button = document.createElement("div"), //...csses= { "height" : "30px", "line-height" : "30px", "position": "absolute", "top": y + 10 + "px", "left": x + 10 + "px", "cursor": "pointer", "border": "1px solid #000", "background": "#EEE", "padding": "2px 8px", "border-radius": "3px" }; for(i in csses){

if(csses.hasOwnProperty(i)){ cssList += i + ":" + csses[i] + ";"; } } =cssList; button.innerHTML = "添加到关键词列表"; button.setAttribute("id", "btn"); //...} 这里有一点我想说说,在写js的时候,会经常涉及到对DOM对象style的处理,如果不想额外加入一个plugins.css之类的文件,可以像上面一样,将样式放置在一个对象中,然后利用for in将其写入,本来开始我用的是 obj.style[i] = csses[i]; 不知道为什么,在IE下报错了,后来便用cssText代替。 效果: 3.标红 //关键词标红 setRed: function(str){ var content = this._("article"), temp = '(' + str + ')'; reg = new RegExp(temp,'g'); content.innerHTML = , "$1"); } 这里主要就是正则表达式的事情了,正则的话,推荐两篇文章 ?一篇是司徒正美的,讲的比较全面,比较系统。点我链接过去→ ?一篇是30分钟搞定正则,这个讲说是对所有语言,JS的话正则这一块还不是特别完善和强大。点我链接过去→ 哈哈,相信用过正则的人不需要我来解释这个$1了吧,他的意思就是匹配到的第一个。 当然,删除标红和这个原理是差不多的。 //删除标红 rmRed: function(str){ var content = this._("article"), temp = "()"; reg = new RegExp(temp,'g i'); content.innerHTML = , str); }

《HTML CSS JavaScript网页制作案例教程》_教学大纲讲解

《HTML+CSS+JavaScript网页制作案例教程》课程教学大纲 (课程英文名称) 课程编号:201509210011 学分:5学分 学时:64学时(其中:讲课学时:45 上机学时: 19 ) 先修课程:计算机基础、计算机网络、计算机应用 后续课程:UI设计、 JavaScript网页特效 适用专业:信息及其计算机相关专业 开课部门:计算机系 一、课程的性质与目标 《HTML+CSS+JavaScript网页制作案例教程)》是面向计算机相关专业的一门专业基础课,涉及网页基础、HTML标记、CSS样式、网页布局、JavaScript 编程基础与事件处理等内容。通过本课程的学习,学生能够了解HTML、CSS及JavaScript语言的发展历史及未来方向,熟悉网页制作流程、掌握常见的网页布局效果、学会制作各种企业、门户、电商类网站。 二、课程的主要内容及基本要求 第一章网页那点事(2学时) [知识点] 认识网页 常见的互联网专业术语 Web标准 HTML简介 CSS简介 JavaScript简介 常用浏览器介绍 Dreamweaver 工具的使用

使用Dreamweaver创建第一个页面 [重点] Web标准 Dreamweaver工具的使用 [难点] Web标准 Dreamweaver工具创建第一个页面 [基本要求] 了解Web标准,明确HTML、CSS及JavaScript在其中的作用。 熟悉Dreamweaver工具的基本操作,能使用Dreamweaver创建简单的网页。第二章从零开始构建HTML页面(4学时) [相关案例] 【案例1】简单的网页: 【案例2】新闻页面: 【案例3】图文混排: [知识点] HTML文档基本格式

javascript常用代码大全

Javascript常用代码大全 //打开模式对话框 //返回模式对话框的值 function okbtn_onclick() { var commstr=''; window.returnValue=commstr; window.close() ; } okbtn_onclick() //全屏幕打开IE 窗口 var winWidth=screen.availWidth ; var winHeight=screen.availHeight-20; window.open("main.aspx","surveyWindow","toolbar=no,wid th="+ winWidth +",height="+ winHeight +",top=0,left=0,scrollbars=yes,resizable=yes,center:yes,statu sbars=yes"); //脚本中中使用xml function initialize() { var xmlDoc var xslDoc xmlDoc = new ActiveXObject('Microsoft.XMLDOM') xmlDoc.async = false; xslDoc = new ActiveXObject('Microsoft.XMLDOM') xslDoc.async = false; xmlDoc.load("tree.xml") xslDoc.load("tree.xsl") folderTree.innerHTML = xmlDoc.documentElement.transformNode(xslDoc) } 一、验证类 1、数字验证内 1.1 整数 1.2 大于0的整数(用于传来的ID的验证) 1.3 负整数的验证 1.4 整数不能大于iMax 1.5 整数不能小于iMin 2、时间类 2.1 短时间,形如(13:04:06) 2.2 短日期,形如(2003-12-05) 2.3 长时间,形如(2003-12-05 13:04:06) 2.4 只有年和月。形如(2003-05,或者2003-5) 2.5 只有小时和分钟,形如(12:03) 3、表单类 3.1 所有的表单的值都不能为空 3.2 多行文本框的值不能为空。 3.3 多行文本框的值不能超过sMaxStrleng 3.4 多行文本框的值不能少于sMixStrleng 3.5 判断单选框是否选择。 3.6 判断复选框是否选择. 3.7 复选框的全选,多选,全不选,反选 3.8 文件上传过程中判断文件类型 4、字符类 4.1 判断字符全部由a-Z或者是A-Z的字字母组成 4.2 判断字符由字母和数字组成。 4.3 判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母 4.4 字符串替换函数.Replace(); 5、浏览器类 5.1 判断浏览器的类型 5.2 判断ie的版本 5.3 判断客户端的分辨率 6、结合类 6.1 email的判断。 6.2 手机号码的验证 6.3 身份证的验证 二、功能类 1、时间与相关控件类 1.1 日历 1.2 时间控件 1.3 万年历 1.4 显示动态显示时钟效果(文本,如OA中时间) 1.5 显示动态显示时钟效果(图像,像手表) 2、表单类 2.1 自动生成表单 2.2 动态添加,修改,删除下拉框中的元素 2.3 可以输入内容的下拉框 2.4 多行文本框中只能输入iMax文字。如果多输入了,自动减少到iMax个文字(多用于短信发送) 3、打印类 3.1 打印控件 4、事件类 4.1 屏蔽右键 4.2 屏蔽所有功能键 4.3 --> 和<-- F5 F11,F9,F1 4.4 屏蔽组合键ctrl+N 5、网页设计类 5.1 连续滚动的文字,图片

理解JavaScript中函数的使用

理解JavaScript中函数的使用 函数是进行模块化程序设计的基础,编写复杂的Ajax应用程序,必须对函数有更深入的了解。 JavaScript中的函数不同于其他的语言,每个函数都是作为一个对象被维护和运行的。通过函数对象的性质,可以很方便的将一个函数赋值给一个变量或者将函数作为参数传递。在继续讲述之前,先看一下函数的使用语法: function func1(…){…} var func2=function(…){…}; var func3=function func4(…){…}; var func5=new Function(); 这些都是声明函数的正确语法。它们和其他语言中常见的函数或之前介绍的函数定义方式有着很大的区别。那么在JavaScript中为什么能这么写?它所遵循的语法是什么呢?下面将介绍这些内容。 认识函数对象(Function Object) 可以用function关键字定义一个函数,并为每个函数指定一个函数名,通过函数名来进行调用。在JavaScript解释执行时,函数都是被维护为一个对象,这就是要介绍的函数对象(Function Object)。 函数对象与其他用户所定义的对象有着本质的区别,这一类对象被称之为内部对象,例如日期对象(Date)、数组对象(Array)、字符串对象(String)都属于内部对象。这些内置对象的构造器是由JavaScript本身所定义的:通过执行new Array()这样的语句返回一个对象,JavaScript内部有一套机制来初始化返回的对象,而不是由用户来指定对象的构造方式。 在JavaScript中,函数对象对应的类型是Function,正如数组对象对应的类型是Array,日期对象对应的类型是Date一样,可以通过new Function()来创建一个函数对象,也可以通过function关键字来创建一个对象。为了便于理解,我们比较函数对象的创建和数组对象的创建。先看数组对象:下面两行代码都是创建一个数组对象myArray: var myArray=[]; //等价于 var myArray=new Array();

《HTML+CSS+JavaScript网页制作案例教程》课程教学

传智播客 《HTML+CSS+JavaScript网页制作案例教程》 教学设计 课程名称:HTML+CSS+JavaScript网页制作案例教程 授课年级:2015年级 授课学期:2015学年第二学期 教师姓名:某某老师

201 年月日 课题名称第5章列表与超链接 计划 课时 6课时 内容分析通过第4章盒子模型的学习,已经很容易对网页做一个简单的结构划分。但是一个网站由多个网页构成,每个网页上都有大量的信息,要想使网页中的信息排列有序,条理清晰,并且网页与网页之间有一定的联系,就需要使用列表和超链接。本章将对列表标记、超链接标记以及CSS控制列表和超链接的样式进行详细讲解。 教学目标●掌握无序、有序及定义列表的使用,可以制作常见的网页列表模块; ●掌握超链接标记的使用,能够使用超链接定义网页元素; ●掌握CSS伪类,会使用CSS伪类实现超链接特效; 重点及措施 教学重点:无序列表、有序列表、定义列表、超链接、链接伪类、锚点链接。 措施:通过上机操作加强学习和补充案例进行巩固。 难点及措施 教学难点:有序列表、定义列表、链接伪类。 措施:通过上机操作加强学习和补充案例进行巩固。 教学方式教学采用教师课堂讲授为主,使用教学PPT讲解。 教学过程 第一课时 (制作“精美电商悬浮框”,讲解无序列表、有序列表) 复习上节课内容 在讲解本节内容前,抛出以下问题让学生回答,以复习第四章“CSS盒子模型”的相关知识。 1、一个盒子的宽(width)和高(height)均为300px,左内边距为30px, 同时盒子有3px的边框,请问这个盒子的总宽度是多少?() A、333px B、366px C、336px D、363px

javascript

如何把JavaScript 放入HTML 页面 上面的代码会在HTML 页面中产生这样的输出: Hello World! 实例解释: 如果需要把一段JavaScript 插入HTML 页面,我们需要使用 就可以告诉浏览器JavaScript 从何处开始,到何处结束。 document.write 字段是标准的JavaScript 命令,用来向页面写入输出。 把document.write 命令输入到之间后,浏览器就会把它当作一条JavaScript 命令来执行。这样浏览器就会向页面写入"Hello World!"。 TIY 注意:如果我们不使用

Javascript自执行匿名函数(function { }) 的原理浅析

Javascript自执行匿名函数(function { }) 的原理浅析 匿名函数就是没有函数名的函数。这篇文章主要介绍了Javascript自执行匿名函数(function { }) 的原理浅析的相关资料,需要的朋友可以参考下 函数是JavaScript中最灵活的一种对象,这里只是讲解其匿名函数的用途。匿名函数指没有指定函数名或指针的函数,自执行匿名函数只是其中一种,下文中称这种函数为:自执行函数 下面是一个最常见的自执行函数: // 传统匿名函数 (function { alert('hello'); }) ; 这段代码的执行效果就是在页面再载入时弹出:"hello" 是什么促使它自动执行的?,来看下面的代码 // 在传统写法上去掉小括号,并在前面加上运算符~,!,+,- ~function { alert('hello'); } ;

!function { alert('hello'); } ; +function { alert('hello'); } ; -function { alert('hello'); } ; 这些写法与上文所说的传统方式执行起来并无区别, 我发现,这些写法的共同点是运算符,其实传统方式的小括号也属于运算的一种,出现在:a=b*(c+d),运算符 + 传递给自生的参数 = 函数自动执行?但有些符号也不支持,比如“=,*,/”号,它自执行的原因还是很神秘,网上也找不到像样的答案 然后我发现了一个神奇的现象,这些运算符可以无限叠加。。。。。。 // function前面是特定符号可以无限叠加... ~!+-~!+-+-!~!+-~!+-+-!~!+-~!+-+-!~!+-~!+-+-!~!+-~!+ -+-!~!+-~!+-+-!~!+-~!+-+-!~!+-~!+-+-!~!+-~!+-+-!~!+ -~!+-+-!~!+-~!+-+-!~!+-~!+-+-!~!+-~!+-+-!~!+-~!+-+-

JavaScript图形实例:蝴蝶结图案

JavaScript图形实例:蝴蝶结图案 1.长短瓣相间的蝴蝶结 设定曲线的坐标方程为: b=r*(1+cos(n*θ)/4)*(1+sin(2*n*θ)); x1=b*cos(θ); x2=b*cos(θ+π/8); y1=b*Math.sin(θ); y2=b*Math.sin(θ+π/8); (0≤θ≤2π,2≤n≤5) 在0~2π区间中从θ=0开始,每隔π/360按曲线方程求得两个点的坐标值(x1,y1)和(x2,y2),并将求得的两点连成一条线段,这样,可以得到一个长短瓣相间的蝴蝶结图案。 编写如下的HTML代码。 长短瓣相间的蝴蝶结 9. 防止被人frame 10. 网页将不能被另存为 11. 12.删除时确认 删 除 13. 取得控件的绝对位置 //javascript //VBScript