当前位置:Gxlcms > html代码 > 高分求解!新手问题,JS点击顶级菜单修改TD颜色遇到问题_html/css_WEB-ITnose

高分求解!新手问题,JS点击顶级菜单修改TD颜色遇到问题_html/css_WEB-ITnose

时间:2021-07-01 10:21:17 帮助过:4人阅读

html div



以下当前效果代码:
                


目前实现了鼠标停留在图片菜单TD上,用函数F_changeColorOn改变另外一个TD的颜色值,鼠标离开F_changeColorOn将另外个TD(菜单图片上面的td)改回原来的颜色值,我现在想要实现鼠标的onclick事件调用另外个函数C,达到点击菜单后,鼠标离开或放在该菜单上,另外个TD的颜色值改变。而放在其他菜单上,和之前效果一样,一直想不通就是C函数如何实现?现在矛盾在点击菜单后离开,颜色没有了,因为离开了,执行了 F_changeColorOff。 请各位大侠指导下 ,就是很顶级菜单搞了1天,没有一点思路,是不是思路完全错了?


回复讨论(解决方案)

给你简化了一下:    

你后面的要求 没明白呀~~。
首先 对于导航来说 ,还是利用 无序列表(ul)来实现比较好。
后面click要求真没明白。

 
1 2 3 4 5 6

简化到底吧

    无标题页        


后面的童鞋 继续 ~

当你点击某个td是为她setAttribute一个自定义属性
之后修改一下你的onmouseover 和onmouseout事件 如果元素有这个自定义属性则鼠标离开后元素不再改变颜色 没有的话改变 试试

没有看明白你的需求,貌似问题复杂化了,鼠标移入移出的效果完全可以用CSS来完成,为啥要要弄个JS呢?

声明一个全局变量,保存最后一次点击的td的一个序号。
var clickIndex = 0;
function F_getChangeIndex(_index){
clickIndex = _index;
}
function F_changeColorOff(var1){
if(var1==1 && clickIndex!=1){
var d=document.getElementById('portal-globalnav-color-off-1');
d.style.background="#3d3d47";
}else if(var1==2 && clickIndex!=2){
var d=document.getElementById('portal-globalnav-color-off-2');
d.style.background="#3d3d47";
}else if(var1==3 && clickIndex!=3){
var d=document.getElementById('portal-globalnav-color-off-3');
d.style.background="#3d3d47";
}else if(var1==4 && clickIndex!=4){
var d=document.getElementById('portal-globalnav-color-off-4');
d.style.background="#3d3d47";
}else if(var1==5 && clickIndex!=5){
var d=document.getElementById('portal-globalnav-color-off-5');
d.style.background="#3d3d47";
}else if(var1==6 && clickIndex!=6){
var d=document.getElementById('portal-globalnav-color-off-6');
d.style.background="#3d3d47";
}

}











人气教程排行