javascript 常用代码大全(超级收藏,强烈推荐)(2)

javascript 常用代码大全(超级收藏,强烈推荐)(2)
javascript 常用代码大全(超级收藏,强烈推荐)(2)

一个可以在页面上随意画线、多边形、圆,填充等功能的js (part 2)

function mkOv2D(left, top, width, height)

{

var s = this.stroke;

width += s-1;

height += s-1;

var a = width>>1, b = height>>1,

wod = width&1, hod = (height&1)+1,

cx = left+a, cy = top+b,

x = 0, y = b,

aa = (a*a)<<1, bb = (b*b)<<1,

st = (aa>>1)*(1-(b<<1)) + bb,

tt = (bb>>1) - aa*((b<<1)-1);

if (s-4 < 0 && (!(s-2) || width-51 > 0 && height-51 > 0))

{

var ox = 0, oy = b,

w, h,

pxl, pxr, pxt, pxb, pxw;

while (y > 0)

{

if (st < 0)

{

st += bb*((x<<1)+3);

tt += (bb<<1)*(++x);

}

else if (tt < 0)

{

st += bb*((x<<1)+3) - (aa<<1)*(y-1);

tt += (bb<<1)*(++x) - aa*(((y--)<<1)-3);

w = x-ox;

h = oy-y;

if (w-1)

{

pxw = w+1+(s&1);

h = s;

}

else if (h-1)

{

pxw = s;

h += 1+(s&1);

}

else pxw = h = s;

this.mkOvQds(cx, cy, -x+1, ox-pxw+w+wod, -oy, -h+oy+hod, pxw, h);

ox = x;

oy = y;

}

else

{

tt -= aa*((y<<1)-3);

st -= (aa<<1)*(--y);

}

}

this.mkDiv(cx-a, cy-oy, s, (oy<<1)+hod);

this.mkDiv(cx+a+wod-s+1, cy-oy, s, (oy<<1)+hod); }

else

{

var _a = (width-((s-1)<<1))>>1,

_b = (height-((s-1)<<1))>>1,

_x = 0, _y = _b,

_aa = (_a*_a)<<1, _bb = (_b*_b)<<1,

_st = (_aa>>1)*(1-(_b<<1)) + _bb,

_tt = (_bb>>1) - _aa*((_b<<1)-1),

pxl = new Array(),

pxt = new Array(),

_pxb = new Array();

pxl[0] = 0;

pxt[0] = b;

_pxb[0] = _b-1;

while (y > 0)

{

if (st < 0)

{

st += bb*((x<<1)+3);

tt += (bb<<1)*(++x);

pxl[pxl.length] = x;

pxt[pxt.length] = y;

}

else if (tt < 0)

{

st += bb*((x<<1)+3) - (aa<<1)*(y-1);

tt += (bb<<1)*(++x) - aa*(((y--)<<1)-3); pxl[pxl.length] = x;

pxt[pxt.length] = y;

}

else

{

tt -= aa*((y<<1)-3);

st -= (aa<<1)*(--y);

}

if (_y > 0)

{

if (_st < 0)

{

_st += _bb*((_x<<1)+3);

_tt += (_bb<<1)*(++_x);

_pxb[_pxb.length] = _y-1;

}

else if (_tt < 0)

{

_st += _bb*((_x<<1)+3) - (_aa<<1)*(_y-1);

_tt += (_bb<<1)*(++_x) - _aa*(((_y--)<<1)-3); _pxb[_pxb.length] = _y-1;

}

else

{

_tt -= _aa*((_y<<1)-3);

_st -= (_aa<<1)*(--_y);

_pxb[_pxb.length-1]--;

}

}

}

var ox = 0, oy = b,

_oy = _pxb[0],

l = pxl.length,

w, h;

for (var i = 0; i < l; i++)

{

if (typeof _pxb[i] != "undefined")

{

if (_pxb[i] < _oy || pxt[i] < oy)

{

x = pxl[i];

this.mkOvQds(cx, cy, -x+1, ox+wod, -oy, _oy+hod, x-ox, oy-_oy); ox = x;

oy = pxt[i];

_oy = _pxb[i];

}

}

else

{

x = pxl[i];

this.mkDiv(cx-x+1, cy-oy, 1, (oy<<1)+hod); this.mkDiv(cx+ox+wod, cy-oy, 1, (oy<<1)+hod); ox = x;

oy = pxt[i];

}

}

this.mkDiv(cx-a, cy-oy, 1, (oy<<1)+hod); this.mkDiv(cx+ox+wod, cy-oy, 1, (oy<<1)+hod); }

}

function mkOvDott(left, top, width, height) {

var a = width>>1, b = height>>1,

wod = width&1, hod = height&1,

cx = left+a, cy = top+b,

x = 0, y = b,

aa2 = (a*a)<<1, aa4 = aa2<<1, bb = (b*b)<<1, st = (aa2>>1)*(1-(b<<1)) + bb,

tt = (bb>>1) - aa2*((b<<1)-1),

drw = true;

while (y > 0)

{

if (st < 0)

{

st += bb*((x<<1)+3);

tt += (bb<<1)*(++x);

}

else if (tt < 0)

{

st += bb*((x<<1)+3) - aa4*(y-1);

tt += (bb<<1)*(++x) - aa2*(((y--)<<1)-3);

}

else

{

tt -= aa2*((y<<1)-3);

st -= aa4*(--y);

}

if (drw) this.mkOvQds(cx, cy, -x, x+wod, -y, y+hod, 1, 1); drw = !drw;

}

}

一个可以在页面上随意画线、多边形、圆,填充等功能的js (part 3)function mkRect(x, y, w, h)

{

var s = this.stroke;

this.mkDiv(x, y, w, s);

this.mkDiv(x+w, y, s, h);

this.mkDiv(x, y+h, w+s, s);

this.mkDiv(x, y+s, s, h-s);

}

function mkRectDott(x, y, w, h)

{

this.drawLine(x, y, x+w, y);

this.drawLine(x+w, y, x+w, y+h);

this.drawLine(x, y+h, x+w, y+h);

this.drawLine(x, y, x, y+h);

}

function jsgFont()

{

this.PLAIN = 'font-weight:normal;';

this.BOLD = 'font-weight:bold;';

this.ITALIC = 'font-style:italic;';

this.ITALIC_BOLD = this.ITALIC + this.BOLD;

this.BOLD_ITALIC = this.ITALIC_BOLD;

}

var Font = new jsgFont();

function jsgStroke()

{

this.DOTTED = -1;

}

var Stroke = new jsgStroke();

function jsGraphics(id, wnd)

{

this.setColor = new Function('arg', 'this.color = arg.toLowerCase();'); this.setStroke = function(x)

{

this.stroke = x;

if (!(x+1))

{

this.drawLine = mkLinDott;

this.drawRect = mkRectDott;

}

else if (x-1 > 0)

{

this.drawLine = mkLin2D;

this.mkOv = mkOv2D;

this.drawRect = mkRect;

}

else

{

this.drawLine = mkLin;

this.mkOv = mkOv;

this.drawRect = mkRect;

}

};

this.setPrintable = function(arg) {

this.printable = arg;

if (jg_fast)

{

this.htmRpc = arg? htmPrtRpc : htmRpc;

}

else this.mkDiv = jg_n4? mkLyr : arg? mkDivPrt : mkDiv; };

this.setFont = function(fam, sz, sty)

{

this.ftFam = fam;

this.ftSz = sz;

this.ftSty = sty || Font.PLAIN;

};

this.drawPolyline = this.drawPolyLine = function(x, y, s) {

for (var i=0 ; i

this.drawLine(x[i], y[i], x[i+1], y[i+1]);

};

this.fillRect = function(x, y, w, h)

{

};

this.drawPolygon = function(x, y)

{

this.drawPolyline(x, y);

this.drawLine(x[x.length-1], y[x.length-1], x[0], y[0]); };

this.drawEllipse = this.drawOval = function(x, y, w, h)

{

this.mkOv(x, y, w, h);

};

this.fillEllipse = this.fillOval = function(left, top, w, h) {

var a = (w -= 1)>>1, b = (h -= 1)>>1,

wod = (w&1)+1, hod = (h&1)+1,

cx = left+a, cy = top+b,

x = 0, y = b,

ox = 0, oy = b,

aa2 = (a*a)<<1, aa4 = aa2<<1, bb = (b*b)<<1,

st = (aa2>>1)*(1-(b<<1)) + bb,

tt = (bb>>1) - aa2*((b<<1)-1),

pxl, dw, dh;

if (w+1) while (y > 0)

{

if (st < 0)

{

st += bb*((x<<1)+3);

tt += (bb<<1)*(++x);

}

else if (tt < 0)

{

st += bb*((x<<1)+3) - aa4*(y-1);

pxl = cx-x;

dw = (x<<1)+wod;

tt += (bb<<1)*(++x) - aa2*(((y--)<<1)-3); dh = oy-y;

this.mkDiv(pxl, cy-oy, dw, dh);

this.mkDiv(pxl, cy+oy-dh+hod, dw, dh);

ox = x;

oy = y;

}

else

{

tt -= aa2*((y<<1)-3);

st -= aa4*(--y);

}

}

this.mkDiv(cx-a, cy-oy, w+1, (oy<<1)+hod); };

this.fillPolygon = function(array_x, array_y) {

var i;

var y;

var miny, maxy;

var x1, y1;

var x2, y2;

var ind1, ind2;

var ints;

var n = array_x.length;

if (!n) return;

miny = array_y[0];

maxy = array_y[0];

for (i = 1; i < n; i++)

{

if (array_y[i] < miny)

miny = array_y[i];

if (array_y[i] > maxy)

maxy = array_y[i];

}

for (y = miny; y <= maxy; y++) {

var polyInts = new Array(); ints = 0;

for (i = 0; i < n; i++)

{

if (!i)

{

ind1 = n-1;

ind2 = 0;

}

else

{

ind1 = i-1;

ind2 = i;

}

y1 = array_y[ind1];

y2 = array_y[ind2];

if (y1 < y2)

{

x1 = array_x[ind1];

x2 = array_x[ind2];

}

else if (y1 > y2)

{

y2 = array_y[ind1];

y1 = array_y[ind2];

x2 = array_x[ind1];

x1 = array_x[ind2];

}

else continue;

if ((y >= y1) && (y < y2))

polyInts[ints++] = Math.round((y-y1) * (x2-x1) / (y2-y1) + x1); else if ((y == maxy) && (y > y1) && (y <= y2))

polyInts[ints++] = Math.round((y-y1) * (x2-x1) / (y2-y1) + x1); }

polyInts.sort(integer_compare);

for (i = 0; i < ints; i+=2)

{

w = polyInts[i+1]-polyInts[i]

this.mkDiv(polyInts[i], y, polyInts[i+1]-polyInts[i]+1, 1);

}

}

};

this.drawString = function(txt, x, y)

{

this.htm += '

'+

txt +

'<\/div>';

}

this.drawImage = function(imgSrc, x, y, w, h)

{

this.htm += '

'+

''+ '<\/div>';

}

this.clear = function()

{

this.htm = "";

if (https://www.360docs.net/doc/e22711616.html,v) https://www.360docs.net/doc/e22711616.html,v.innerHTML = this.defhtm;

};

this.mkOvQds = function(cx, cy, xl, xr, yt, yb, w, h)

{

this.mkDiv(xr+cx, yt+cy, w, h);

this.mkDiv(xr+cx, yb+cy, w, h);

this.mkDiv(xl+cx, yb+cy, w, h);

this.mkDiv(xl+cx, yt+cy, w, h);

};

this.setStroke(1);

this.setFont('verdana,geneva,helvetica,sans-serif', String.fromCharCode(0x31,

0x32, 0x70, 0x78), Font.PLAIN);

this.color = '#000000';

this.htm = '';

this.wnd = wnd || window;

if (!(jg_ie || jg_dom || jg_ihtm)) chkDHTM();

if (typeof id != 'string' || !id) this.paint = pntDoc;

else

{

https://www.360docs.net/doc/e22711616.html,v = document.all? (this.wnd.document.all[id] || null)

: document.getElementById? (this.wnd.document.getElementById(id) || null)

: null;

this.defhtm = (https://www.360docs.net/doc/e22711616.html,v && https://www.360docs.net/doc/e22711616.html,v.innerHTML)? https://www.360docs.net/doc/e22711616.html,v.innerHTML : '';

this.paint = jg_dom? pntCnvDom : jg_ie? pntCnvIe : jg_ihtm? pntCnvIhtm : pntCnv; }

this.setPrintable(false);

}

function integer_compare(x,y)

{

return (x < y) ? -1 : ((x > y)*1);

}

Javascript弹窗代码大全(收集)

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

最新WEB游戏源码服务端(完整修改版).

2011WEB网页游戏服务端源码全集 webgame源码,本人已测试,供大家下载 一、抢车位源码 [停车大战]ASP+ACCESS[带MSSQL] 版权声明:(停车大战V1.0 FOR DVBBS AC ) 停车大战V1.0 FOR DVBBS版本,是由NDS.西域数码(https://www.360docs.net/doc/e22711616.html,)于2008年11月开发,作者:SING_CEE 游戏演示地址 https://www.360docs.net/doc/e22711616.html,/BBS 本游戏插件于2008年12月圣诞节前免费开放游戏源码,供开发爱好者体验和改进,无论你是使用还是改进本游戏都请保留这些文字声明,如果你有重大的改进或开发方面有什么难题请发信息给我。 安装步骤: 1.将DVBBS8 2.MDB中的4个数据表导入你的DVBBS数据库中。 2.拷贝所有文件和文件夹到DVBBS根目录。 3.在DVBBS后台插件管理论坛菜单管理新建菜单 标题:停车大战 注释版权:停车大战V1.0 https://www.360docs.net/doc/e22711616.html,西域数码 链接:parking.asp 插件ID:parking 能使用插件的用户组: 1,2,3,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26 4.提交 二次开发说明: 停车大战游戏使用ASP和FLASH AS 相结合 这是一种最新的WEB应用发展方向,这个游戏源码希望对WEB游戏初学者有所帮助。欢迎有兴趣的开发者改进停车大战游戏插件,并请在新的版本中保留本文中的版权声明!目前停车大战游戏还有部分功能没有完善,比如游戏中赚取的金钱和论坛中的金币互相兑换功能,以及金钱奖励方式的更加合理化,增加后台管理(增加新车、增加新车位背景、奖励控制、汇率等管理)还有很多功能都需要大家一起来完善。 停车大战文件说明: parking.asp 停车大厅游戏主文件 pkbuy.asp 购车 pkbuywnd.asp 购车窗体 pkchangewnd.asp 换车窗体

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和Canvas开发游戏(一)

使用JavaScript和Canvas开发游戏(一)地址:https://www.360docs.net/doc/e22711616.html,/forum.php?mod=viewthread&tid=2063

目录 1、认识一下Canvas 2、在Canvas上绘图 3、通过Canvas元素实现高级图像操作 4、通过Canvas实现视差滚动 5、写一个游戏框架(一) 6、写一个游戏框架(二) 7、动画 8、JavaScript键盘输入 9、综合运用 10、定义级别 11、跳跃与坠落 12、添加道具 13、加载资源 14、添加主菜单

1、认识一下Canvas Canvas元素以及JavaScript引擎中新增的一些特性,让Web开发人员不必借助第三方插件,即可设计开发出精细且具有交互性的2D网页。这篇文章就向大家介绍一下Canvas 元素,以及它的一些可能的用途。 JavaScript与Canvas元素 HTML是为创建静态页面而生的。HTML所能实现的动态效果,也仅限于显示GIF动画和闪烁的文本。JavaScript改变了这一切,通过它能够动态修改网页。今天,很多Web 服务都利用AJAX来创建网页,为用户提供更加流畅的体验,也超越了标准HTML页面中常见的“点击-重新加载-点击”式的交互模式。 然而,JavaScript的某些功能会受到其宿主浏览器的制约。尽管可以在网页中创建和修改任何元素,但JavaScript不能(轻易地)让浏览器显示一种新对象。通过JavaScript修改文本、插入图像或者缩放表格都很容易,因为这些对象本来就是HTML所支持的。如果你想再玩得刺激一点,比如写一个网页游戏,怎么办?那恐怕就得苦心积虑地改变标准HTML元素的用途,克服种种不测才能达到目的。要么,你就得求助于Flash或Silverlight 这样的插件。 Canvas元素登场了。这个新HTML元素为JavaScript开发者提供了一种无需插件即可在网页中直接绘图的机制。Canvas元素最早是由苹果公司在其WebKit框架中引入的,Safari浏览器和Dashboard微件都在使用。Canvas元素现在也被建议加入了HTML5规范,得到了最新的Chrome、Firefox、Opera以及Konqueror等浏览器的支持。Internet Explorer(至少在IE8之前)还不支持Canvas,但ExplorerCanvas项目倒是为IE提供了与Canvas元素类似的功能。 Canvas元素对做过2D图形编程的人是小菜一碟。可以在这个元素上画线、画各种形状、画渐变,甚至可以利用与其他2D API中类似的函数来修改其中的每一个像素。得益于Chrome的V8、Firefox的SpiderMonkey以及Safari的Nitro等最新JavaScript引擎的性能,创建精细且具有交互性的Web应用已经完全没有问题。

Javascript基础教程

Javascript简介 (2) Javascript简介 (2) 简单的Javascript入门示例 (4) 编写Javascript 代码 (5) 语句(Statements) (5) 语句块(Blocks) (6) 注释(Comments) (7) 表达式(Expressions) (8) 赋值和等于(Assignments and Equality) (9) Javascript常用运算符(Operators) (10) 算术运算符 (10) 逻辑运算符 (11) 赋值运算符 (12) Javascript 循环语句(Javascript Loop Statements) (12) 使用for 循环语句 (13) 使用for...in 循环语句 . (15) 使用while 和do...while 循环语句 (17) 使用break 和continue 语句 (20) Javascript写在哪里 (23) Javascript在之间 (23)

Javascript在之间 (24) Javascript放在外部文件里 (25) Javascript变量(Javascript Variables) (26) 什么是变量? (26) 变量的声明(Declaring Variables) (26) 变量的命名规则 (27) Javascript条件语句(Javascript Conditional Statements) (27) 单项条件结构(if条件语句) (28) 双向条件结构(if...else条件语句) (29) 多项条件结构(switch条件语句) (31) Javascript保留字(Javascript Reserved Words) (32) Javascript未来保留字(Javascript Future Reserved Words) (33) Javascript简介 Javascript简介

JS中的常用语句

1.document.write( " "); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document- >html- >(head,body) 4.一个浏览器窗口中的DOM顺序是:window- >(navigator,screen,history,location,document) 5.得到表单中元素的名称和值:document.getElementById( "表单中元素的ID號 ").name(或value) 6.一个小写转大写的JS: document.getElementById( "output ").value = document.getElementById( "input ").value.toUpperCase(); 7.JS中的值类型:String,Number,Boolean,Null,Object,Function 8.JS中的字符型转换成数值型:parseInt(),parseFloat() 9.JS中的数字转换成字符型:( " " 变量) 10.JS中的取字符串长度是:(length) 11.JS中的字符与字符相连接使用號. 12.JS中的比较操作符有:==等于,!=不等于, >, >=, <. <= 13.JS中声明变量使用:var来进行声明 14.JS中的判定语句结构:if(condition){}else{} 15.JS中的循环结构:for([initial expression];[condition];[upadte expression]) {inside loop} 16.循环中止的命令是:break 17.JS中的函数定义:function functionName([parameter],...){statement[s]} 18.当文件中出现多个form表单时.可以用document.forms[0],document.forms[1]来代替. 19.窗口:打开窗口window.open(), 关闭一个窗口:window.close(), 窗口本身:self 20.状態栏的设置:window.status= "字符 "; 21.弹出提示信息:window.alert( "字符 "); 22.弹出確认框:window.confirm(); 23.弹出输入提示框:window.prompt(); 24.指定当前显示链接的位置:window.location.href= "URL " 25.取出窗体中的所有表单的数量:document.forms.length 26.关闭文档的输出流:document.close(); 27.字符串追加连接符: = 28.创建一个文档元素:document.createElement(),document.createTextNode() 29.得到元素的方法:document.getElementById() 30.设置表单中所有文本型的成员的值为空: var form = window.document.forms[0] for (var i = 0; i

Javascript基础

表JS基本类型有什么?引用类型有什么? 基本类型:number,string,boolean,undefined,null 引用类型:基本类型以外的都是引用类型,如object/array/function/date等等 关于基本类型与引用类型的区别可以详细看看@Naraku_的这篇文章: [ JS 进阶] 基本类型引用类型简单赋值对象引用 概况起来有这么几个要点: 1.我们无法给基本类型的对象添加属性和方法; var m1 = 123; https://www.360docs.net/doc/e22711616.html, = 'abc'; console.log(https://www.360docs.net/doc/e22711616.html,); //输出:undefined 2.基本类型对象的比较是值比较,而引用类型对象的比较是引用比较; var m1 = 123, m2 = 123; console.log(m1 === m2); //输出:true var o1 = {}, o2 = {}; console.log(o1 === o2); //输出:false 3.基本类型对象是存储在栈内存中的,而引用类型对象其实是一个存储在栈内存中的一个堆内存地址。 4.基本类型对象赋值时(执行=号操作),是在栈内存中创建一个新的空间,然后将值复制一份到新的空间里。 5.引用类型对象赋值时(执行=号操作),也是在栈内存中复制一份一样的值,但这个值是一个堆内存地址,所以被赋值的那个对象跟前者其实是一个对象。 var o1 = {}; var o2 = o1; https://www.360docs.net/doc/e22711616.html, = 'abc';console.log(https://www.360docs.net/doc/e22711616.html,); // --> abc console.log(https://www.360docs.net/doc/e22711616.html,); // --> abc o2.age = '123';console.log(o1.age); // --> 123console.log(o2.age); // --> 123 JS中的常见对置对象类

《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小游戏实例:简单的键盘练习

JavaScript小游戏实例:简单的键盘练习 键盘是一种常用的输入设备,灵活熟练地使用键盘进行输入是计算机用户需掌握的一门基本功。下面我们编写一个简单的键盘练习游戏。 1.刺破气泡交互式小动画 在编写简单的键盘练习游戏之前,先设计一个简单地刺破气泡交互式小动画。 在面板底部逐个上升一些气泡,用鼠标在某个气泡上单击,该气泡被刺破,刺破后的小气泡逐渐消散在面板中。交互式效果如图1所示。 图1 刺破气泡交互式动画 一个气泡可分为两个状态:(1)气泡从面板底部上升;(2)气泡被鼠标单击刺破成小气泡或气泡上升越过了面板顶部消散了。 为此抽象出两个对象类:Bubbles和miniBubbles。其中,Bubbles用于表示一个未被刺破的气泡,miniBubbles用于表示一个气泡刺破后得到的逐渐消散的小气泡。 Bubbles对象类定义6个属性:表示气泡圆心的坐标(x,y)、气泡的半径radius、上升时垂直方向的位移改变量ySpeed、气泡上升加速度gravity和气泡颜色color。 坐标属性值y的初始值取画布的高度,表示气泡从游戏面板底部开始上升,其余各属性的初始值采用随机数确定或直接指定。具体定义如下: function Bubbles() { this.x = rand(30,canvas.width - 30); this.y = canvas.height; this.radius = rand(15, 30); this.color ='rgba(255, 255, 255, 0.75)'; this.ySpeed= Math.random() * 2; this.gravity = 0.01; } Bubbles对象类定义2个方法:绘制气泡的方法draw()、气泡上升时坐标改变方法update()。 miniBubbles对象类定义8个属性:表示小气泡圆心的坐标(x,y)、小气泡半径radius、散开时水平和垂直方向的位移改变量xSpeed和ySpeed、小气泡的填充color、小气泡的减速度gravity、小气泡的存活时间timeToLive。具体定义如下: function miniBubbles(x,y,radius) {

javascript代码

代码1 1.oncontextmenu="window.event.returnvalue=false" 将彻底屏蔽鼠标右键

no
可用于Table 2. 取消选取、防止复制 3. onpaste="return false" 不准粘贴 4. oncopy="return false;" oncut="return false;" 防止复制 5. IE地址栏前换成自己的图标 6. 可以在收藏夹中显示出你的图标 7. 关闭输入法 8. 永远都会带着框架 9. 防止被人frame 10. 网页将不能被另存为 11. 12.删除时确认 删 除 13. 取得控件的绝对位置 //javascript //VBScript