Heim >Web-Frontend >HTML-Tutorial >a标签加上CSS样式后 onclick事件不执行,怎么办- -。_html/css_WEB-ITnose
<li class="level1"><a href="/batcher/toBatcherListTree.jhtml" target="mainFrame" onclick="changeFrame();">仪器仪表</a></li> <li > <a onclick="alert(123)">测试</a></li>
.menu li.level1 a{ display:block; line-height:31px; height:31px; padding-left:50px; font-size:12px; color:#666666; background:url(../images/menubg.gif) no-repeat left top;}/*一级菜单两态样式,供JS调用*/.menu li.level1 a.hove{ background-position:left -31px; color: #FFFFFF; font-size: 12px; background-image: url(../images/menubg.gif);}.menu li.level1 a.cur{ background-position:left -62px; color: #FFFFFF;}
哪里有这个问题,我试了下没有发现这个问题的,你那是哪个浏览器?
还有,onclick="changeFrame();"这个函数确定存在吧?
我用的火狐,IE8,那个函数确定存在,我换成alert一样不执行。
我自己测试,在哪个浏览器下都没有问题的,你打开浏览器调试工具,看看是不是代码有错误,导致页面没有加载完全
楼主测试一下 部分代码运行情况 就测试你发的这段代码 看行不。
你的a标签 加了链接 还加onclick?
你可以这样 href="javascropt:changeFrame();" 把onclick删除掉
或者 href="#"在onclick="changeFrame();"
个人签名:健康宝宝
大致找到导致onclick不执行的代码了,
addLoadEvent(new Function("hovermenu('level1','level2','hove','cur');"));//menu代表菜单总的ID名称//level1代表一级菜单项的父容器,level2代表二级菜单项的父容器,//后面的三个参数style1,style2,style3分别代表鼠标移入,移出,点击的三态样式名addLoadEvent(new Function("submenu('level2','hove1','hove1');"));/*滑动显隐菜单列表*/var temp;var temp1;function hovermenu(cssName1,cssName2,style2,style3){ var ArrLinks=getElementsByClassName(cssName1);//一级菜单父容器的数组 var ArrLevel = new Array();//第一级菜单的数组 for(var i=0;i<ArrLinks.length;i++){ var curobj= getFirstChild(ArrLinks[i]);//获得第一个子对象 ArrLevel.push(curobj); } var ArrDivs=getElementsByClassName(cssName2);//二级菜单的父容器数组,要显示的二级菜单容器 for(var i=0;i<ArrLinks.length;i++){ var obj=getFirstChild(ArrLinks[i]);//获得第一个子对象 obj.index=i; obj.onmouseover= function(){overme(this,ArrLevel,style2,temp)}; obj.onmouseout=function(){outme(this,ArrLevel,style2,temp)}; obj.onclick=function(){clickme(this,ArrLinks,ArrDivs,style2,style3,temp)}; //obj.onmouseover=function(){clickme(this,ArrLinks,ArrDivs,style2,style3,temp)}; obj.onfocus=function(){this.blur()};//去掉虚线框 } }//二级菜单绑定事件function submenu(cssName2,style2,style3){ var ArrLinks=getElementsByClassName(cssName2);//一级菜单父容器的数组 var ArrLevel = new Array();//第一级菜单的数组 for(var i=0;i<ArrLinks.length;i++){ var sublinks= ArrLinks[i].getElementsByTagName('A');//获得第一个子对象 for(var m=0;m<sublinks.length;m++){ ArrLevel.push(sublinks[m]); } } for(var i=0;i<ArrLevel.length;i++){ var obj=ArrLevel[i]; obj.index=i obj.onmouseover= function(){overme(this,ArrLevel,style2,temp1)}; obj.onmouseout=function(){outme(this,ArrLevel,style2,temp1)}; //obj.onclick=function(){subclick(this,ArrLevel,style2,style3,temp1)}; obj.onfocus=function(){this.blur()};//去掉虚线框 } }
先看看在说吧!