实现 html 界面
<! Doctype html> <html> <éadf> <tatique> Sélectionnez et allez navigation </ title> <script src = "script01.js"> </ script> <link rel = "Stylesheet" href = "script01.css" rel = "external nofollow"> </ head> <body> <form action = "gotoLocation.cgi"> <sélect Sélectionné> Sélectionnez une rubrique </ Option> <Option Value = "Script06.html"> Cross-Checking Fields </ Option> <Option Value = "Script07.html"> Travailler avec les boutons radio </ Option> <Option Value = "Script09.html"> Vallidating Zip Codes </ / option> <option> <option> value = "script10.html"> validation des adresses e-mail </ option> </lect> <noscript> <input type = "soumi" value = "allez là-bas!"> </oscript> </ form> </ body> </html>
实现菜单导航
window.onload = initform; window.onunload = function () {}; fonction initform () {document.getElementById ("newLocation"). SelectedIndex = 0; document.getElementById ("newlocation"). onChange = jumppage;} function jumppage () {var newloc = newoPtionsSey [newloc.selectedIndex] .Value; if (newpage! = "") {window.location = newPage;}}下面是源码分析
1 et 1
window.onload = initform;
window.onunload = function () {};
在窗口加载时 , 调用 initform () 函数。下一行需要解释一下 , 因为它是处理某些浏览器的古怪行为的变通方法。
当窗口卸载时(即关闭窗口或者浏览器转到另一个网址),我们调用一个匿名函数(anonymousfunction),即没有名称的函数。在这个示例中,这个函数不但没有名称,而且根本不做任何事情。提供这个函数是因为必须将onunload设置为某种东西,否则,当单击浏览器的back按钮时,就不会触发onload事件,因为在某些浏览器(比如Firefox和Safari)中页面会被缓存。让onunload执行任何操作,就会使页面不被缓存,因此当用户后退时,会发生onload事件。
匿名是指在 Fonction 和 () 之间没有名称。这是触发 onUnload 但不让它做任何事情的最简单的方法。与任何函数中一样 , 花括号包含函数的内容。这里的花括号是空的 , 因为这个函数不做任何事情。
2
document.getElementById ("NewLocation"). SelectedIndex = 0;
document.getElementById ("NewLocation"). OnChange = JuMppage;
在 initform () 函数中 , 第一行获得 html 页面上的菜单 (它的 id 为 newlocation) , 并且将它的 SelectedIndex 属性设置为零 , 这会使它显示 Sélectionnez un sujet。
第二行让脚本在菜单选择发生改变时 , 调用 JUMPPAGE () 函数。
3 et 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。