我现在碰到的问题是 爷爷辈元素div和孙子辈元素li同宽 父元素是ul 。
两个li竖着排列 鼠标移出事件阻止冒泡 div 有10px 宽边框。
鼠标移出快了 移出事件就不执行了
下面是代码:<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JSSample</title>
<style>
*{margin:0;padding: 0;}
ul{list-style:none;}
li{font-size: 80px;text-align: center;cursor: pointer;display: none;}
#main{width: 200px;margin:50px auto;
border: 10px solid black;
}
.li{width: 200px;height: 100px;line-height: 100px;background: gray;}
.li{width: 200px;height: 100px;line-height: 100px;background: gray;}
#main .set{display: block;background: red;}
.on .li{display: block;}
</style>
</head>
<body>
<div id="main">
<li id="li1" class="li set red">宝贝</li>
<li id="li2" class="li">商铺</li>
</div>
<script type="text/javascript"> function addEvent (id,event,fn) {
var ele = getDOM(id)||document;
if (ele.addEventListener){
ele.addEventListener(event,fn,false);
} else if(ele.attachEvent){
ele.attachEvent("on"+event,fn);
}
}
function getDOM (id) {
return document.getElementById(id);
}
var Clickflag = 0;
var oSet = document.getElementsByClassName("set")[0];
addEvent("main","mouseover",function () {
this.className = "on";
});
addEvent("main","mouseout",function () {
// if(!Clickflag){
this.className = "";
oSet.className = "li set";
// }
});
addEvent("li1","mouseover",function (event) {
this.className = "li set";
// getDOM("main").className = "on";
// event.stopPropagation();
});
addEvent("li1","mouseout",function (event) {
this.className = "li";
event.stopPropagation();
});
addEvent("li2","mouseover",function (event) {
this.className = "li set";
// getDOM("main").className = "on";
// event.stopPropagation();
});
addEvent("li2","mouseout",function (event) {
this.className = "li";
event.stopPropagation();
});
// addEvent("li2","click",function (event) {
// this.className = "li set";
// oSet = this;
// event.stopPropagation();
// getDOM("main").className ="";
// });
</script>
</body>
</html>
两个li竖着排列 鼠标移出事件阻止冒泡 div 有10px 宽边框。
鼠标移出快了 移出事件就不执行了
下面是代码:<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JSSample</title>
<style>
*{margin:0;padding: 0;}
ul{list-style:none;}
li{font-size: 80px;text-align: center;cursor: pointer;display: none;}
#main{width: 200px;margin:50px auto;
border: 10px solid black;
}
.li{width: 200px;height: 100px;line-height: 100px;background: gray;}
.li{width: 200px;height: 100px;line-height: 100px;background: gray;}
#main .set{display: block;background: red;}
.on .li{display: block;}
</style>
</head>
<body>
<div id="main">
<li id="li1" class="li set red">宝贝</li>
<li id="li2" class="li">商铺</li>
</div>
<script type="text/javascript"> function addEvent (id,event,fn) {
var ele = getDOM(id)||document;
if (ele.addEventListener){
ele.addEventListener(event,fn,false);
} else if(ele.attachEvent){
ele.attachEvent("on"+event,fn);
}
}
function getDOM (id) {
return document.getElementById(id);
}
var Clickflag = 0;
var oSet = document.getElementsByClassName("set")[0];
addEvent("main","mouseover",function () {
this.className = "on";
});
addEvent("main","mouseout",function () {
// if(!Clickflag){
this.className = "";
oSet.className = "li set";
// }
});
addEvent("li1","mouseover",function (event) {
this.className = "li set";
// getDOM("main").className = "on";
// event.stopPropagation();
});
addEvent("li1","mouseout",function (event) {
this.className = "li";
event.stopPropagation();
});
addEvent("li2","mouseover",function (event) {
this.className = "li set";
// getDOM("main").className = "on";
// event.stopPropagation();
});
addEvent("li2","mouseout",function (event) {
this.className = "li";
event.stopPropagation();
});
// addEvent("li2","click",function (event) {
// this.className = "li set";
// oSet = this;
// event.stopPropagation();
// getDOM("main").className ="";
// });
</script>
</body>
</html>
解决方案 »
- 从子页面访问父页面input值的问题,高手们进来看看吧,谢谢了...
- 求一JS效果
- 鼠标放上去div改变背景图片
- 一个图片刷新显示的问题?大家帮忙看下!!
- 好生奇怪的问题,请帮忙看看代码
- svg如何画有箭头的线
- 一个网页,上下两桢(分别调用两个不同的文件top.asp和content.asp),如何在content.asp里实现一点隐藏,上面的桢就会隐藏起来,一点打
- 如何用鼠标直接调整表格宽度~~
- 谁帮我写一个页面的停留秒数,并显示在表单中,50分送上,急用!
- 在网页中弹出的窗口有没有像C/S中的SHOWMODAL类型的
- js中如何判断一个对象为空
- 想让图中的这个白点沿着圆圈转动,请问如何实现?
this.className = "on";
});
addEvent("main","mouseleave",function () {
// if(!Clickflag){
this.className = "";
oSet.className = "li set";
// }
});
addEvent("li1","mouseenter",function (event) {
this.className = "li set";
// getDOM("main").className = "on";
// event.stopPropagation();
});
addEvent("li1","mouseleave",function (event) {
this.className = "li";
});
addEvent("li2","mouseenter",function (event) {
this.className = "li set";
// getDOM("main").className = "on";
// event.stopPropagation();
});
addEvent("li2","mouseleave",function (event) {
this.className = "li";
});