日期:2014-05-16 浏览次数:20430 次
VVG.DOM.bindEvent(li,"click",function(event){
var target = event.target || event.srcElement;
iId.value = target.innerHTML;
//alert(ul.innerHTML);
ul.style.display = "none";//这里已经隐藏了,但是怎么没有起作用呢????
});
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>下拉菜单样式模拟,模拟下拉菜单</title>
<style type="text/css">
*{margin:0;padding:0;}
#warper{ margin:20px; position:relative;}
#warper ul{list-style:none; margin: 0; padding:0;}
#warper ul li{line-height:20px; cursor:pointer; margin:1px 0; font-size:12px; text-indent:5px;}
.inputbox{width:128px; height:23px; line-height:23px; background: #ccc url(http://img.allinbuy.cn/WebResources/WSTL/Images/shopping/point/slt.gif) no-repeat; border:none; font-size:12px; text-indent:5px;}
</style>
</head>
<body>
<div id="warper">
<select name="" id="select" style="display:none;">
<option value="北京" selected>北京</option>
<option value="上海">上海</option>
<option value="重庆">重庆</option>
<option value="成都">成都</option>
<option value="杭州">杭州</option>
<option value="南京">南京</option>
</select>
<input type="text" id="input" class="inputbox" value="北京" disabled />
</div>
<script type="text/javascript">
var VVG = {};
VVG.DOM = {};
VVG.DOM.bindEvent = function(element,type,func){
if(element.addEventListener){
element.addEventListener(type,func,false); //false 表示冒泡
}else if(element.attachEvent){
element.attachEvent("on"+type,func)
}else{
element["on"+ type] = func;
}
};
VVG.DOM.unbindEvent = function(element,type,func){
if(element.removeEventListener){
element.removeEventListener(type,func,false);
}else if(element.detachEvent){
element.detachEvent("on"+type,func);
}else{
element["on"+type] = null;
}
};
VVG.Selector = function(o){
this.selectId = o.selectId;
this.inputId = o.inputId;
this.warperId = o.warperId;
}
VVG.Selector.prototype = {
checkArguments : function(){
if(this.selectId&&this.inputId&&this.warperId){
return true;
}else{
alert("传入的ID参数为空或者格式不正确!");
return false;
}
},
createUl : function(){
if(this.checkArguments()){
var sId = document.getElementById(this.selectId);
var iId = document.getElementById(this.inputId);
var iIdWidth = iId.offsetWidth;
var iIdHeight = iId.offsetHeight;
// console.log(iIdWidth + " " + iIdHeight);
var wId = document.getElementById(this.warperId);
var sArr = [];
var options = sId.getElementsByTagName("option");
var ul = document.createElement("ul");
for(var i = 0, n = options.length; i<n;i++){
var li = document.createElement("li");
li.i