📄 javascript 第 六 集.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0058)http://homepage.qdcatv.com.cn/lkw/javascript/javascr6.html -->
<HTML><HEAD><TITLE>JavaScript 第 六 集</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<SCRIPT language=JavaScript>
<!-- Hide
function WinOpen(url) {
msg=open(url,"DisplayWindow","toolbar=yes,directories=no,menubar=no,status=yes");
}
function stat(txt) {
window.status = txt;
setTimeout("erase()",3000);
}
function erase() {
window.status="";
}
// -->
</SCRIPT>
<META content="MSHTML 6.00.2719.2200" name=GENERATOR></HEAD>
<BODY background="JavaScript 第 六 集.files/ee.jpg"><FONT color=#ff0000 size=6><A
name=twoinone></A>
<CENTER><A name=status></A><FONT color=#ff0000 size=4><BR>第 六
集</CENTER></A></FONT>
<P>
<HR align=center width="50%">
<P><BR><BR>
<CENTER>
<TABLE>
<TBODY>
<TR>
<TD><FONT size=+1>许 多 网 友 问 我 一 个 有 趣 的 问 题 : 如 何 用 mouse 按 一 下 便 可 同 时 载
入 两 页 文 件。 基 本 上 有 三 种 方法 可 以 达 到 这 种 功 能。 第 一 种 方 法 是 制 作 一 个 按 钮, 让 使 用
者 按 下 後 去 启 动 一 个 能 同 时 将 两 份文 件 载 入 不 同frames或 新 视 窗 的 函 式 (function)。 若
您 曾 经 看 过 此 份 简 介 文 件 的 其 它 章 节 的 话,我 相 信 您 可 以 很 轻 易 写 出 这 种 语 法:
<P>
<FORM><INPUT onclick="WinOpen('frames2.html')" type=button value="试 试 这 个 按 钮 !" name=Button>
</FORM>
<P>我 们 制 作 了 三 个 frame , 第 一 个 frame 中 包 含 了 一 个 按 钮。 请 注 意, 第 一 个 HTML 档
案 只 是 用来 打 开 frame 和 给 予 每 个 frame 一 个 名 字。 若 您 还 不 清 楚 JavaScript 和 frame
的 关 系, 可 以 先 阅读 第 三 章。 不 过 在 此 还 是 照 例 让 您 瞧 瞧 原 始 码 (不 知 您 是 否 在 很 多 电 脑
书 籍 中 遇 到 一 个 相 同 的困 扰, 那 就 是 作 者 常 把 一 些 自 认 很 简 单 的 东 西 忽 略 不 提, 结 果 那 些
东 西 正 是 读 者 搞 不 懂 的 地 方 ! 所 以, 若 您 对 我 提 的 东 西 已 很 了 解, 请 发 挥 一 下 您 的 耐 性
:-)
<P>
<H3>frames2.html</H3>
<P><PRE><HTML>
<HEAD>
<title>Frames</title>
</HEAD>
<FRAMESET COLS="295,*">
<FRAMESET ROWS="100%,*">
<FRAME SRC="loadtwo.html" NAME="fr1">
</FRAMESET>
<FRAMESET ROWS="75%,25%">
<FRAME SRC="cell.html" NAME="fr2">
<FRAME SRC="cell.html" NAME="fr3">
</FRAMESET>
</FRAMESET>
</HTML>
</PRE>第 一 个 frame 会 载 入 <I>loadtwo.html</I> 并 产 生 一 个 按 钮 :
<P>
<H3>loadtwo.html</H3><PRE><HTML>
<HEAD>
<script language="JavaScript">
<!-- Hiding
function loadtwo(page2, page3) {
parent.fr2.location.href=page2;
parent.fr3.location.href=page3;
}
// -->
</script>
</HEAD>
<BODY>
<FORM NAME="buttons">
<INPUT TYPE="button" VALUE="同 时 载 入 两 份 文 件" onClick="loadtwo('frtest1.html',
'frtest2.html')">
</FORM>
</BODY>
</HTML>
</PRE>
<P>按 下 按 钮 後, 电 脑 会 传 递 两 个 字 串 给 loadtwo() 并 将 之 启 动。 由 loadtwo() 中 可 以 看
出, 第 一 个字 串 是 用 来 定 义 第 二 个 frame <I>fr2</I>所 载 入 文 件 的 位 址 和 档 案 名。 若 您 想
定 义 另 外 的 按 钮 来 载 入 不同 的 文 件, 您 可 以 重 复 使 用 此 函 式。 只 要 将 文 件 的 URLs
(addresses) 传 给 loadtwo()即 可。
<P><BR>接 下 来 谈 谈 用 hyperlinks 同 时 载 入 两 页 文 件 的 第 二 种 方 法。 在 Internet 上 您
可 以 发 现 许 多 网 页 使用 <I><a href="yourlink.html"
onCLick="yourfunction()"></I>来 达 到 上 述 提 及 的 功 能。 但 此 语 法 并 不 能在 所 有 平
台 上 均 正 常 执 行, 因 此 最 好 不 要 用 此 语 法。 现 在 我 告 诉 您 另 一 种 写 法 : 我 们 可 改 用 下述
JavaScript 语 法: <PRE><a href="javascript:myfunction()">My Link</a>
</PRE>此 种 方 式 非 常 简 单 而 且 在 所 有 浏 览 器 中 均 能 正 常 执 行。 您 只 要 写 上
<I>javascript:</I> 并 加 上 您 想 联 结的 函 式 名 即 可。 若 此 函 式 名 称 设 为 'loadtwo()' ,
那 您 就 可 藉 由 按 下 此 hyperlink 来 达 到 同 时 载 入两 份 文 件 的 目 的 了。
<P><BR>再 接 着 谈 谈 用 mouse 按 一 下 便 可 同 时 载 入 两 页 文 件 的 第 三 种 方 法, 此 方 法 可 以
以 hyperlinks 或按 钮 来 执 行。 您 可 先 在 第 二 个frame 中 载 入 一 个 HTML 文 件 : <BR><a
href="getfr2.html" target="fr2">请 按 这 里 !</a><BR>然 後 在 此 文 件 中
(getfr2.html) 加 入 onLoad 这 项 指 令, 用 来 触 发 第 三 个 frame 载 入 另 一 份 文 件。如 此 一
来 便 可 同 时 载 入 两 份 文 件。getfr2.html 档 的 原 始 码 如 下 :
<P><PRE><HTML>
<BODY onLoad="parent.fr3.location.href='getfr3.html'; return true;">
文 件 内 容.....。
</body>
</html>
</PRE>
<P>当 然, 您 必 须 在 所 有 会 被 载 入 到 第 二 个 frame 的 文 件 中 加 入 onLoad 这 项 指 令。
<P>
<HR align=center width="80%" SIZE=2>
<P><A name=newwin></A>另 一 个 常 遇 见 的 问 题 是 如 何 开 一 个 新 视 窗 并 载 入 文 件?我 们 想
达 到 的 效 果 是 当 使 用 者 按 一 下 mouse 便 会 '弹' 出 一 个 新 视 窗。 很 简 单, 只 要 在 <a
href...> 中 利 用 target 这 项 特 性 就 可 达 到 此 效果。例 如 : <BR><a
href="goanywhere.html" target="Resource Window">Go!</a>
<P>
<HR align=center width="80%" SIZE=2>
<P><A name=operators></A>现 在 我 将 谈 谈 在 JavaScript 中 几 种 常 用 的 运 算 子
(operator)。 运 算 子 可 以 使 您 的 JavaScript 语 法 更精 简。 假 设 您 想 测 试 变 数 <I>x</I>
是 否 大 於 3 且 小 於 10, 您 可 写 成 :
<P><PRE>if (x>3)
if (x<10)
doanything();
</PRE>
<P>当 满 足 x>3 <I>且</I> x<10 时, 就 会 执 行 doanything()。 还 有 一 种 更 精 简 的
写 法 :
<P><PRE>if (x>3 && x<10) doanything();
</PRE>' &&' 称 为 AND- 运 算 子。 还 有 另 一 种 被 称 为 OR- 运 算 子 的 东 东 可 让 您
用 来 检 视 是 否 变 数 <I>x</I> 等於 5 或 变 数 <I>y</I> 等 於 17 :
<P><PRE>if (x==5 || y==17) doanything();
</PRE>当 满 足 x==3 <I>或</I> y==17 时, 就 会 执 行 doanything()。 当 然, 当 两 者 皆 成 立
时 也 会 执 行 doanything()。<BR>在 JavaScript 中 是 利 用 == 来 做 比 较 的 工 作 (其 它 尚 有
<,>,<= 和 >=), 这 些 都 和 C/C++ 的 语法 相 同。 另 外 单 一 '=' 是 用 来 将 数 值
存 入 变 数 用 的。 (在 Pascal 语 法 中 将 数 值 指 定 给 变 数 是 用 :=, 而 做 比 较 是 用 单 一 的
'=', 这 和 JavaScript 语 法 有 点 不 同)
<P>若 您 想 利 用 '不 等 於' 这 项 特 性, 您 可 以 用 !=。 例 如 : <I>x != 17</I>.
<P>尚 有 许 多 可 以 精 简 您 的 JavaScript 语 法 的 运 算 子, 去 翻 翻 Netscape 的 文 件 吧 !
<P><BR></FONT></P></TD></TR></TBODY></TABLE></CENTER>
<P>
<HR align=center width="80%" SIZE=2>
<P>
<H4>
<CENTER>
<H4><A onmouseover="stat('回 到 主 页'); return true"
href="http://homepage.qdcatv.com.cn/lkw/javascript/script.htm"
tppabs="http://202.96.217.5/~xiaoyi/script.htm">回 主 目 录</A> </H4></CENTER>
<P></P></H4></FONT></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -