0

我有一个问题,我的 javascript 不能在单独的文件中工作,但它可以内联工作。

这是我的 javascript 的工作代码。这是在 asp.net 4.0 中。

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="FrontEnd.master.cs"   Inherits="pigninja.FrontEnd" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script type="text/javascript">
    function ShowItem(itemID) {
        document.getElementById(itemID).style.visiblity = "visible";
    }

    function HideItem(itemID) {
        document.getElementById(itemID).style.visiblity = "hidden";
    }
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>Pigninja Paradox</title>
    <link href="../Styles/Styles.css" rel="Stylesheet" type="text/css" />
</head>
<body>
    <form id="form1" runat="server">
    <div id="pageWrapper">
        <div id="header">
        </div>
        <div id="navigation">
            <div id="menu">
                <ul>
                    <li><a href="../Default.aspx">Home</a></li>
                    <li><a href="../About.aspx">About Me</a>
                        <div id="submenu">
                            <ul>
                                <li onmouseout="HideItem('submenu');" onmouseover="ShowItem('submenu');"><a href="1983.aspx">
                                    1983</a></li>
                                <li><a href="1988.aspx">1988</a></li>
                                <li><a href="1990s.aspx">1990's</a></li>
                                <li><a href="2000.aspx">2000</a></li>
                                <li><a href="present.aspx">Present</a></li>
                            </ul>
                        </div>
                    </li>
                    <li><a href="../Programming.aspx">Programming</a></li>
                    <li><a href="../Rants.aspx">Rants</a></li>
                </ul>
            </div>
        </div>
        <div id="content">
            <asp:ContentPlaceHolder ID="Content" runat="server">
            </asp:ContentPlaceHolder>
        </div>
        <div id="footer">
            <p>
                I'd rather be an outlaw then to fall to Babylon law</p>
        </div>
    </div>
    </form>
</body>
</html>

问题是一旦我将其更改为

<script language="javascript" type="text/javascript" src="../scripts/navBarScript.js">  </script>

我的代码不再有效,我终其一生都无法弄清楚原因。

4

2 回答 2

0

确保你的脚本的 src 路径是正确的,你总是可以这样设置它

src="/scripts/navBarScript.js"

从 / 开始从基础引用,没有理由不工作

此外,将外部脚本标签放在头部内或就在结束正文标签之前

于 2012-11-11T15:42:09.913 回答
0

我不确定为什么会修复它,但我最终将脚本更改为

function ShowItem(itemID){
document.getElementById(itemID).style.display = "block";
}

function HideItem(itemID){
document.getElementById(itemID).style.display = "none";
}

在这些更改之后,我的代码按预期执行。我不知道如何或为什么。但这解决了我的问题。

于 2012-11-12T04:39:25.067 回答