实现 HTML 界面
<! doctype html> <html> <head> <title> حدد واذهب التنقل </title> <script src = "script01.js" id = "newLocation"> <selected> حدد موضوعًا </option> <Opture Value = "Script06.html"> حقول الاختيار المتقاطع </option> <corted value = "script07.html"> العمل مع أزرار الراديو </option> <spue value = "script08.html" الرموز </option> <Option value = "script10.html"> التحقق من صحة عناوين البريد الإلكتروني </orpion> </select> <noscript> <input type = "submit" value = "go there!"
实现菜单导航
window.onload = initform ؛ window.onunload = function () {} ؛ function initform () {document.getElementById ("newLocation"). selectIndex = 0 ؛ document.getElementById ("newLocation"). onChange = newLocal ؛ [newLoc.SelectedIndex] .value ؛ if (newPage! = "") {window.location = newPage ؛}}下面是源码分析
1.
window.onload = initform ؛
window.onunload = function () {} ؛
在窗口加载时 , 调用 initform () 函数。下一行需要解释一下 , 因为它是处理某些浏览器的古怪行为的变通方法。
当窗口卸载时 ((即关闭窗口或者浏览器转到另一个网址 , 我们调用一个匿名函数 ((مجهول)) 即没有名称的函数。在这个示例中 , , 这个函数不但没有名称 而且根本不做任何事情。提供这个函数是因为必须将 而且根本不做任何事情。提供这个函数是因为必须将 而且根本不做任何事情。提供这个函数是因为必须将 设置为某种东西 , 否则 , 当单击浏览器的 当单击浏览器的 当单击浏览器的 当单击浏览器的 当单击浏览器的 按钮时 按钮时 就不会触发 事件 , , 因为在某些浏览器 因为在某些浏览器 (比如 比如 比如 比如 和
匿名是指在 الوظيفة 和 () 之间没有名称。这是触发 onunload 但不让它做任何事情的最简单的方法。与任何函数中一样 , 花括号包含函数的内容。这里的花括号是空的 , 因为这个函数不做任何事情。
2.
document.getElementById ("newLocation"). selectIndex = 0 ؛
document.getElementById ("newLocation"). onChange = Jumppage ؛
在 initform () 函数中 , 第一行获得 html 页面上的菜单 (它的 它的 为 为 newLocation) , 并且将它的 selectIndex 属性设置为零 , 这会使它显示 حدد موضوع。
第二行让脚本在菜单选择发生改变时 , 调用 jumppage () 函数。
3.
var newloc = document.getElementById ("newLocation") ؛
在 Jumppage () 函数中 , newloc 变量查找访问者在菜单中选择的值。
4.
var newPage = newLoc.Options [newLoc.SelectedIndex] .value ؛
从方括号中的代码开始 , 向外依次分析。newloc.SelectedIndex 是一个从 0 ~ 5 的数字 的数字 因为有 6
个菜单选项。记住 JavaScript 的编号常常是基于零的) 。得到这个数字之后 , 接下来获得对应的菜单项
的值 , 这就是我们希望跳转到的网页的名称。然后 , 将结果赋值给变量 newpage。
5.
if (newPage! = "") {
window.location = newPage ؛
newpage 是否非空。换句话说 , 如果 newPage 有一个值 , 那么让窗口转到
选择的菜单项所指定的 url。