js 缺少对象
他说我缺少对象不知道怎么办了帮帮谢谢了!js==========================================menu_css_color_over()...
他说我缺少对象 不知道怎么办了 帮帮谢谢了!
js
==========================================
menu_css_color_over(){
var divs=document.getElementById("menu_botton_color_up_2");
divs.style.cssText='
border-top:1px solid #f23971;
height:44px;
width:47px;FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColorStr=#000000,endColorStr=#ffffff)';
}
menu_css_color_out(){
alert('asdfa');
}
==========================================
html
==========================================
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link rel="stylesheet" type="text/css" href="css/Page_Css.css">
<script language="JavaScript" src="js/js.js"></script>
</head>
<body>
<div class="content">
<!--logo层-->
<div id="logo"><img id="logoimg" src="images/logo_199_126.gif" /></div>
<div id="layout">content</div>
<!--menu_Div start-->
<div id="layout_menu">
<div id="menu">
<div id="menu_Background_color"></div>
<div id="menu_botton_color_down"></div>
</div>
<div id="menu_button_2" onmouseover="menu_css_color_over()" onmouseout="menu_css_color_out()">
<div id="menu_content"><b>首页</b></div>
<div id="menu_botton_color_up_2"></div>
<div id="menu_botton_color_down_2"></div>
</div>
</div>
<!--menu_Div end-->
</div>
</body>
</html>
========================================== 展开
js
==========================================
menu_css_color_over(){
var divs=document.getElementById("menu_botton_color_up_2");
divs.style.cssText='
border-top:1px solid #f23971;
height:44px;
width:47px;FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColorStr=#000000,endColorStr=#ffffff)';
}
menu_css_color_out(){
alert('asdfa');
}
==========================================
html
==========================================
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link rel="stylesheet" type="text/css" href="css/Page_Css.css">
<script language="JavaScript" src="js/js.js"></script>
</head>
<body>
<div class="content">
<!--logo层-->
<div id="logo"><img id="logoimg" src="images/logo_199_126.gif" /></div>
<div id="layout">content</div>
<!--menu_Div start-->
<div id="layout_menu">
<div id="menu">
<div id="menu_Background_color"></div>
<div id="menu_botton_color_down"></div>
</div>
<div id="menu_button_2" onmouseover="menu_css_color_over()" onmouseout="menu_css_color_out()">
<div id="menu_content"><b>首页</b></div>
<div id="menu_botton_color_up_2"></div>
<div id="menu_botton_color_down_2"></div>
</div>
</div>
<!--menu_Div end-->
</div>
</body>
</html>
========================================== 展开
5个回答
展开全部
出错原因:
1.函数没有使用function声明
2.divs.style.cssText变量的值(字符串)应该写在同一行
你把js文件的内容改一下:
function menu_css_color_over(){
var divs=document.getElementById("menu_botton_color_up_2");
divs.style.cssText='border-top:1px solid #f23971;height:44px;width:47px;FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColorStr=#000000,endColorStr=#ffffff';
}
function menu_css_color_out(){
alert('asdfa');
}
1.函数没有使用function声明
2.divs.style.cssText变量的值(字符串)应该写在同一行
你把js文件的内容改一下:
function menu_css_color_over(){
var divs=document.getElementById("menu_botton_color_up_2");
divs.style.cssText='border-top:1px solid #f23971;height:44px;width:47px;FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColorStr=#000000,endColorStr=#ffffff';
}
function menu_css_color_out(){
alert('asdfa');
}
展开全部
我想可能是你这段代码和你页面的其他jq代码的$冲突了,有一个办法,var
jq=
jQuery.noConflict();做一个这样的定义,放在函数最前面就好了,然后把所有的$变成jq(这里面我定义的变量是jq)你可以自定义。如果你把这个效果单独拿出来试一下没有缺少对象的错误的话,那这个办法应该是可以的。
jq=
jQuery.noConflict();做一个这样的定义,放在函数最前面就好了,然后把所有的$变成jq(这里面我定义的变量是jq)你可以自定义。如果你把这个效果单独拿出来试一下没有缺少对象的错误的话,那这个办法应该是可以的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
服务器ID与客户端ID不一致造成此问题。
由于服务器端控件在生成html时,id会发生变化,所以在js直接取服务器端控件id时会找不到对象。
解决方法:
1.运行网页文件,查看源文件,将相应的html生成的控件id替换现有js内的控件Id
2.使用ClientID
,原js代码改为---
var
abd1=document.getElementById('<%=n_no%>')
var
abd2=document.getElementById('<%=n_yes%>')
由于服务器端控件在生成html时,id会发生变化,所以在js直接取服务器端控件id时会找不到对象。
解决方法:
1.运行网页文件,查看源文件,将相应的html生成的控件id替换现有js内的控件Id
2.使用ClientID
,原js代码改为---
var
abd1=document.getElementById('<%=n_no%>')
var
abd2=document.getElementById('<%=n_yes%>')
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
写的不规范,出错难免
<head>
<style>
.css1{
border-top:1px solid #f23971;
height:44px;
width:47px;
FILTER:progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColorStr=#000000,endColorStr=#ffffff)';
}
</style>
</head>
<body>
<script>
function menu_css_color_over(){
var divs=document.getElementById("menu_botton_color_up_2");
divs.className="css1 ";
}
</script>
</body>
<head>
<style>
.css1{
border-top:1px solid #f23971;
height:44px;
width:47px;
FILTER:progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColorStr=#000000,endColorStr=#ffffff)';
}
</style>
</head>
<body>
<script>
function menu_css_color_over(){
var divs=document.getElementById("menu_botton_color_up_2");
divs.className="css1 ";
}
</script>
</body>
参考资料: <豪杰春香><冬日恋歌>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
以我的开发经验
可能是JS里document.getElementById没有相应的控件
未必正确
可能是JS里document.getElementById没有相应的控件
未必正确
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询