[英]Issue with javascript navigation disappearing
我正在為一位朋友(他在一家律師事務所工作)進行一些網站更改,他的網站左側有一個導航欄。 在懸停時,這些顯示子菜單。 不幸的是,他試圖取出其中一個子菜單項並丟失了子菜單導航的所有功能。 現在,它不顯示子菜單,而只顯示錯誤。
這是以前的代碼(它的工作原理):
<script language="JavaScript">
<!--
function mmLoadMenus() {
if (window.mm_menu_0327091831_0) return;
window.mm_menu_0327091831_0 = new Menu("root",225,30,"Optima, Verdana, Helvetica Neue, sans-serif",14,"#FFFFFF","#FFFFFF","#7E7D7D","#B3B3B3","left","middle",8,0,250,-5,7,true,false,true,0,true,true);
mm_menu_0327091831_0.addMenuItem("HARRY GRIFF, P.C.","location='harry-griff.html'");
mm_menu_0327091831_0.addMenuItem("DOUGLAS E. LARSON, P.C.","location='doug-larson.html'");
mm_menu_0327091831_0.addMenuItem("STEPHEN L. LAICHE, P.C.","location='stephen-laiche.html'");
mm_menu_0327091831_0.addMenuItem("BRAD R. WRIGHT, P.L.L.C.","location='brad-wright.html'");
mm_menu_0327091831_0.hideOnMouseOut=true;
mm_menu_0327091831_0.bgColor='#555555';
mm_menu_0327091831_0.menuBorder=1;
mm_menu_0327091831_0.menuLiteBgColor='#FFFFFF';
mm_menu_0327091831_0.menuBorderBgColor='#777777';
mm_menu_0327091831_0.writeMenus();
} // mmLoadMenus()
//-->
</script>
這是以下代碼:
<script language="JavaScript">
<!--
function mmLoadMenus() {
if (window.mm_menu_0327091831_0) return;
window.mm_menu_0327091831_0 = new Menu("root",225,30,"Optima, Verdana, Helvetica Neue, sans-serif",14,"#FFFFFF","#FFFFFF","#7E7D7D","#B3B3B3","left","middle",8,0,250,-5,7,true,false,true,0,true,true);
mm_menu_0327091831_0.addMenuItem("HARRY GRIFF, P.C.","location='harry-griff.html'");
mm_menu_0327091831_0.addMenuItem("DOUGLAS E. LARSON, P.C.","location='doug-larson.html'");
mm_menu_0327091831_0.addMenuItem("STEPHEN L. LAICHE, P.C.","location='stephen-laiche.html'");
mm_menu_0327091831_0.addMenuItem("BRAD R. WRIGHT, P.L.L.C.","location='brad-wright.html'");
mm_menu_0327091831_0.addMenuItem("BRAD R. WRIGHT, P.L.L.C.","location='rob-zentner.html'");
mm_menu_0327091831_0.hideOnMouseOut=true;
mm_menu_0327091831_0.bgColor='#555555';
mm_menu_0327091831_0.menuBorder=1;
mm_menu_0327091831_0.menuLiteBgColor='#FFFFFF';
mm_menu_0327091831_0.menuBorderBgColor='#777777';
mm_menu_0327091831_0.writeMenus();
} // mmLoadMenus()
//-->
</script>
繼承人正在運作的網站:
繼承人網站不工作:
我剛剛粘貼了更改過的javascript,因為我認為問題出在那里,但如果需要,我可以發布更多內容。
謝謝大家的幫助!
你有2個不同版本的mm_menu.js
。 其中一個有語法錯誤。 注意StackOverflow的語法突出顯示在下面的2個片段中。
http://www.gllblaw.com/mm_menu.js (好版本)
/**
* mm_menu 20MAR2002 Version 6.0
* Andy Finnell, March 2002
* Copyright (c) 2000-2002 Macromedia, Inc.
*
* based on menu.js
* by gary smith, July 1997
* Copyright (c) 1997-1999 Netscape Communications Corp.
*
* Netscape grants you a royalty free license to use or modify this
* software provided that this copyright notice appears on all copies.
* This software is provided "AS IS," without a warranty of any kind.
*/
function Menu(label, mw, mh, fnt, fs, fclr, fhclr, bg, bgh, halgn, valgn, pad, space, to, sx, sy, srel, opq, vert, idt, aw, ah)
{
// code here...
http://users.acsol.net/~jhart/mm_menu.js (壞版本)
/**
* mm_menu 20MAR2002 Version 6.0
* Andy Finnell, March 2002
* Copyright (c) 2000-2002 Macromedia, Inc.
*
/
function Menu(label, mw, mh, fnt, fs, fclr, fhclr, bg, bgh, halgn, valgn, pad, space, to, sx, sy, srel, opq, vert, idt, aw, ah)
{
// code here...
看到問題了嗎? 在錯誤版本頂部的標題中,注釋未正確關閉。 多行Javascript注釋以/*
開頭,以*/
結尾。 但是,此標題注釋已被破壞,它沒有結束注釋標記。 因此整個文件被注釋掉, Menu
不存在。
正確地關閉那個評論,我打賭事情會好起來的。
所以你知道如何成為一個更好的開發者,這就是我如何解決這個問題。
我只是在Chrome中打開了開發人員工具,並查看了JS控制台。 在鮮紅色的地方,我看到了這個:
這立即告訴我語法錯誤,以及錯誤所在的文件和近似行。 查看該文件,然后看到Chromes語法突出顯示樣式的整個文件,如注釋(綠色),使得它很明顯是什么。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.