当前位置导航:炫浪网>>网络学院>>编程开发>>JAVA教程>>Java进阶

Javascript的编程


  (1)一 个 简 单 的 例 子
  
  JavaScript的 编 程 工 作 复 杂 与 否 和HTML文 档所
  提 供 的 功 能 大 小 密 切相 关 ,我 们 用 几 个 简
  单 的 例 子 来介 绍 它 的 编 程 特 点 。
  
  例 1.一 个 简 单 的 Script
  
  <HTML>
  
  <TITLE>This is a test</TITLE>
  
  <HEAD>
  
  <SCRIPT LANGUAGE="JavaScript">
  
  <!-- to hide script contents from old browsers
  
  // end hiding contents from old browsers-->
  
  </SCRIPT>
  
  </HEAD>
  
  <BODY>
  
  This is a test:
  
  <SCRIPT LANGUAGE="JavaScript">
  
  document.write "Hello!"
  
  </SCRIPT>
  
  </BODY>
  
  </HTML>
  
  例 1显 示 结 果 为 :
  
  This is a test:Hello!
  
  从 以 上 例 子 中 可 以 发 现 ,JavaScript源 代 码
  被 嵌 在 一 个 HTML文 档 中,它 可 以出 现 在 文档
  头 部 (HEAD节 )和 文 档 体 部 (BODY节 )。SCRIPT标
  记 的 一 般 格 式 为 :
  
  <SCRIPT LANGUAGE="JavaScript">
  
  JavaScript语 句 串 ...
  
  </SCRIPT>
  
  为 了 使 老 版 本的浏览器(即Navigator2.0版 以前的
  浏 览 器 )避 开 不 识 别 的"JavaScript语句串 ",用
  JavaScript编 写 的 源 代 码 可 以 用注 解 括 起来
  ,即 ,使 用 HTML 的注 解 标 记 <!--???-->(如上例
  所 示 ),而 Navigator 2.x可 以 识 别 放 在注 解 行
  中的 JavaScri pt源 代 码 。
  
  (2)一 个 调 用 函 数 的 例 子
  
  内 建 函 数 在 JavaScript中 占 有 很 大的 比例,由
  于 它 由 Netscape浏 览 器 支 持 并解 释 执 行 ,给
  Web制 作 者 提供了编写 的 工具函 数 ;JavaScript还
  为 用 户 提 供 自 己 定义 函 数 和 调用函数的能力
  ,使 Web编 写 者 具 有 编程 手 段 的 灵 活 性 。
  
  函 数 的 定 义 与 调 用 同 一 般 的 程 序设 计 语
  言 类 似 ,但 由 于 浏 览 器 浏 览的Web页 是 顺 序
  从 WWW服 务 器 调 出 ,并 由 Netscape浏 览 器解 释
  执 行 的 ,函 数 必 须 先定义(一 般 放在 HEAD节)后
  调用 (一 般 放 在 BODY节 )。
  
  例 2.一 个 有 函 数 定 义 和 调 用的 JavaScript
  
  <HTML>
  
  <TITLE>This is a function's test </TITLE>
  
  <HEAD>
  
  <SCRIPT LANGUAGE="JavaScript">
  
  <!-- to hide script contents from old browsers>
  
  function square(i){
  
  document.write("The call passed",i,"to the square
  function.","
")
  
  return i*i
  
  }
  
  document.write("The function re-turned",square(8)
  ,".")
  
  //end hiding contents from old drowsers
  -->
  
  </SCRIPT>
  
  </HEAD>
  
  <BODY>
  
  <BR>
  
  All done.
  
  </BODY>
  
  </HTML>
  
  该 例 显 示 结 果 为 :
  
  The call passed 8 to the square
  func-tion.
  
  The function returned 64.
  
  All done.
  从 执 行 结 果 可 以 看 出 ,一 个 函数 定 义 时 并
  不 发 生 作 用 ,只 有 在 引 用 时 (函数 定 义 后的
  document.write语 句 )才被 激 活 。
  
  (3)编 写 事 件 处 理 程 序
  
  JavaScript的 应 用 中 大 量 采 用 事件 驱 动 。Web
  页 中 的 一 个 事 件 是 指 用 户 做一 件 事 后引起
  的 动 作 。 例 如 ,用 户 移 动 鼠 标到 某 个链接点
  、 点 击 鼠 标 、 针 表 格 填 写 后 的 提 交动作等
  都 被 认 为 是 一 个 事 件 。 Web页作 者 可 以定义
  事件 处 理 程 序(event handl er),在 出 现 一 个 事
  件 后 自 动 触 发 执 行 该 事 件 处 理 程 序 。
  例 3是 一 个 由 事 件驱 动(输入后点击 Cal-culate按
  钮 的 动 作 )的 例 子 。
  
  例 3.具 有 填 表 和 提 交 功 能 的事件处理 Script
  
  <HTML>
  
  <TITLE>Form Object example </TITLE>
  
  <HEAD>
  
  <SCRIPT LANGUAGE="JavaScript">
  
  function compute(obj){
  
  obj.result.value=eval(obj.expr.value)
  
  }
  
  </SCRIPT>
  
  </HEAD>
  
  <BODY>
  
  <FORM NAME="evalform" METHOD="get">
  
  Enter an expression:
  
  <TNPUT TYPE="text"NAME="expr" SIZE=20>
  
  <BR>
  
  Result:
  
  <INPUT TYPE="text"NAME="result"
  SIZE=15>
  
  <BR>
  
  <INPUT TYPE="button"NAME="Bottom1"
  VALUE="Calculate"
  
  onClick="compute(this.form)">
  
  </FORM>
  
  </BODY>
  
  </HTML>
  
  该 例 运 行 时 出 现 :
  
  Enter an expression: ______
  
  Result: ______
  
  Calculate
  在 Enter an expression:栏 中 输 入 一个表达式(如
  22*3-6),然 后 点 击Calculate按 钮 ,相应 的结果显
  示 在 Result栏 内 (如 60)。
  
  由 例 3源 代 码 和 运 行 结 果 可 以 看 出 :
  
  ① 在 HTML源 代 码 的头部定义 了一个名叫compute的
  函 数 ,其 形式 参 数 obj是一 个form(表 格 )。当用
  户 输 入 表 达 式 后 ,点 击 Calculate按 钮 ,由 此
  触 发 的 事 件 处理 程 序 onClick调 用compute函数
  ,并 携 带 了 参 数 this.form,将 表 格 对 象(由 <
  FORM>贩?</FOR M>定 义 )交 给事 件 处 理 程序调
  用 的 函 数 compute去 处 理 。
  
  函 数 compute由 一 条 赋 值 语 句 构成 ,其 右 部是
  JavaScript的 内 建 函 数 eval,它 可以 自 动 分析表
  格 中 名 为 "expr"栏 内 的 输 入 字 符 串 ,计 算出
  其 值 ;计 算 出 的 结 果传 送 给 表 格(form)中名为
  "result"的 栏 内 ,这 样 ,在 屏 幕 上 Result:后的框
  中 出 现 计 算结 果 。
  
  除 例 3中 出现的JavaScript事件处理 程 序onClick,另
  外 还 有 一 些 类似 程 序 ,包括 :on-Blur,onChange
  ,onFocus,onLoad,on-MouseOver,onSelect,onSubmit,
  onUn-load等 。
  
相关内容
赞助商链接