我使用以下代码:
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site1.master.cs" Inherits="WebApplication3.Site1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link href="style.css" rel="stylesheet" />
<script type="text/javascript">
function change(color) {
document.bgColor = color;
}
</script>
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<form id="form1" runat="server">
<p> </p>
<div class="green">
<div id="slatenav">
<ul>
<li><a href="WebForm3.aspx" id="green" onclick="change('green')">Home</a></li>
<li><a href="WebForm4.aspx" id="red" onclick="change('red')">About Us</a></li>
</ul>
</div>
</div>
<div>
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
</form>
</body>
</html>
为什么它不能正常工作?
答案 0 :(得分:2)
虽然你不应该使用document.bgColor
,但它应该仍然有用。问题不在于 - 而是你正在使用取消javascript的链接(链接正在加载新页面)。
尝试一下:
<script type="text/javascript">
function change(color) {
document.bgColor = color;
return false;
}
</script>
<div id="slatenav">
<ul>
<li><a href="WebForm3.aspx" id="green" onclick="return change('green');">Home</a></li>
<li><a href="WebForm4.aspx" id="red" onclick="return change('red');">About Us</a></li>
</ul>
</div>
它不会加载新页面,但Javascript
将会启动。正如其他人所建议的那样,使用document.body.style.backgroundColor
。
答案 1 :(得分:1)
document.bgColor 已弃用 document.body.style.backgroundColor 而不是
来自https://developer.mozilla.org/en/docs/DOM/document.bgColor