jQuery有很多这样的
插件,但是我们的
公司不使用jQuery或插件,所以我试着自己写,我不知道其他人是怎么写的。他们只是按照自己的想法去做。
直接在代码上:
复制代码代码如下所示:
演示
在window.onload =
函数(){
VaR建立document.getelementsbytagname(按钮){ 0 };
VAR FLT = document.getelementsbytagname('div){ 0 };
btn.onclick =函数(){
event.cancelbubble =真;
var x = 15 + 'pxbtn.offsetleft;
var y = 100 + 'pxbtn.offsettop;
flt.style.top = Y;
flt.style.left = x;
flt.style.display =阻止;
}
onclick =函数(){
flt.style.display =不关;
}
}
* {
保证金:0px;
填料:0px;
}
div {
宽度:60px;
身高:100px;
背景:# 33ccff;
显示:无;
位置:绝对;
}
DIV UL {
文本对齐:中心;
}
div里{
列表样式
类型:无;
}
按钮{
上图:300px;
左:400px;
位置:绝对;
}
点击
演示1
演示2
演示3
演示4
演示5
您可以通过将它复制到
本地来测试它。
这里有两件事情说cancelbubble。因为我做的是点击显示div按钮,在任意位置点击div会消失,但Javascript的泡沫形成机理是按钮的onclick事件,冒泡,DOM在onclick事件,它会消失,让div的onclick事件冲突,因此要event.cancelbubble = true;这行代码来阻止泡沫的形成。在一般
情况下,代码很简单。