JavaScript中window对象常用的属性、方法

JavaScript中window对象常用的属性、方法,第1张

二、Window对象的属性和方法

Window对象共有七个属性:

● defauleStatus:指定窗口状态栏中的信息。

● status:指定当前窗口状态栏中的信息。

● frames:是一个数组,其中内容是窗口中所有的框架。

● parent:指当前窗口的父窗口。

● self:指当前窗口。

● top:代表当前所有窗口的最顶层窗口。

● window:代表当前窗口。

Window对象有五个方法:

● alert:显示带有一个“确定”按钮的对话框。

● confirm:显示带有“确定”与“取消”两个按钮的对话框。

● prompt:显示带有输入区的对话框。

● open:打开一个新窗口。

● close:关闭用户打开的窗口。

三、status属性例子,在窗口状态栏显示和清除文字

单击"写入文字"按钮,在状态栏显示'这是状态栏'。按"清除文字"按钮,清除状态栏的文字。

<html>

<head>

<script language="JavaScript">

function statbar(txt) {

window.status = txt}

</script>

</head>

<body>

<form>

<input type="button" name="look" value="写入文字" onclick="statbar('这是状态栏')">

<input type="button" name="erase" value="清除文字" onclick="statbar('')">

</form>

</body>

</html>

四、alert方法例子:显示“大家来学习JavaScript脚本语言。”的对话框。

<html>

<body>

<script language="JavaScript">

alert("大家来学习JavaScript脚本语言。")

</script>

</body>

</html>

五、 Confirm方法例子:让用户选择是否进入下一页。

用confirm显示选择对话框,按“确定”进入next.htm,按“取消”不进入。

<html>

<body>

<script language="JavaScript">

if(confirm("你想进入下一页吗?"))

location="next.htm"

</script>

</body>

</html>

六、Prompt方法例子:让用户输入姓名,并将它显示出来。

用prompt显示输入对话框,让用户输入姓名,再用alert对话框显示出来。

<html>

<body>

<script language="JavaScript">

var name

name=prompt("请输入姓名","张国强")

alert("你好,"+name)

</script>

</body>

</html>

七、Window对象方法例子

当打开网页时,立即打开另一窗口,显示test.htm。

<html>

<body onload="javascript:window.open('test.htm')">

</body>

</html>

八、History对象的属性和方法

History对象只有一个length属性,它表示历史对象中的链接的数目。

History对象有以下方法:

● back:在浏览器中显示上一页。

● forward:在浏览器中显示上下页。

● go(int):在浏览器中载入从当前算起的第int个页面。

九、History例子:具有“上一页”、“下一页”按钮的页面。

<html>

<body>

<form>

<input type="button" value="上一页" onClick="history.back()">

<input type="button" value="下一页" onClick="history.forward()">

</body>

</html>

这次我们使用 Python 来实现生命游戏,这是一种简单的元胞自动机。基于一定规则,程序可以自动从当前状态推演到下一状态。制作的成品如下:

先来说说生命游戏的规则:

在生命游戏中,每个单元格有两种状态,生与死。在我们的实现中,黄色的单元格代表活着的细胞,红色单元格表示死亡的细胞。而每一个细胞的下一状态,是由该细胞及周围的八个细胞的当前状态决定的。

具体而言:

当前细胞为活细胞

当前细胞为死细胞

无需安装的标准库:

第三方库:

导入模块:

首先,我们要知道细胞的生存空间是 N * N 的方阵,每个细胞都有两种状态:on, off。on 为 255,off 为 0。我们使用 numpy 产生 N * N 的方阵。np.random.choice 是在 State.on 和 State.off ,等概率随机抽取一个元素构造 N * N 的方阵。

其次我们要明白如何计算细胞周围活细胞的个数,尤其是边界一圈的细胞。我们可以采用余数的方式,假设棋盘大小为 9 * 9,那么对于左右边界而言,左边界的左边一个元素的计算方式: - 1 % 9 = 8,自动折到右边界上。将细胞周围八个单元格的数值加起来,除以 255,就可以得到细胞周围活细胞的个数。

接下来是对规则的翻译,即根据当前世代的状态,推演出下一世代,细胞的状态。initial 为当前世代的矩阵,data为下一世代的矩阵,我们根据 initial 的数值,计算出 data 的数值。total 为周围活细胞的个数,如果当前为活细胞,total 大于三或者小于二,下一世代就会死去。如果当前为死细胞,total 等于三,下一世代活细胞就会繁殖到该单元格上。

接下来是制作动图的过程,前面几行是绘图的基本 *** 作。之后,我们使用到了 matplotlib.animation 的方法。其中,FuncAnimation 接受的参数含义:fig 为图像句柄,generate 函数是我们更新每一帧图像所需数据的函数,下面会有介绍,fargs 为 genrate 函数的除去第一个参数的其他参数,第一个参数由 FuncAnimation 指定 framenum(帧数) 传给 generate 函数。frames 是帧数,interval 是更新图像间隔,save_count 为从帧到缓存的值的数量。

如果指定保存路径(html),则保存为 html 动画。

下面我们来看 generate 函数,NUM 为当迭代次数,frame_num 接收来自 FuncAnimation 的帧数。通过嵌套的 for 循环,我们逐个地更新方阵中各元素的状态。

最后,我们可以通过命令行参数,运行我们的程序:

-- size 参数为棋盘大小,--seed 为随机种子,用于产生不同的随机方阵。

高斯帕滑翔机q(Gosper Glider Gun)

可将 --gosper 更改为 --glider 滑翔机。--save 为动图保存的地址。

<form action="http://www.baidu.com/baidu" target="_blank">

<table bgcolor="#FFFFFF"><tr><td>

<input name=tn type=hidden value=baidu>

<a href="http://www.baidu.com/"><img src="http://img.baidu.com/img/logo-80px.gif" alt="Baidu" align="bottom" border="0"></a>

<input type=text name=word size=30>

<input type="submit" value="百度搜索">

</td></tr></table>

</form>

百度搜索代码!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12142993.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存