var clicked=$(e.target);
if(clicked.attr("tagName")=="P")clicked=clicked.parent("a");
else if(clicked.attr("tagName")=="UL")return;
clicked.focus();
clicked.click();
return false;
}
else if(e.keyCode==40){
var clicked=$(e.target);
if(clicked.attr("tagName")=="P")clicked=clicked.parent("a");
else if(clicked.attr("tagName")=="UL")return;
var now=$(e.target);
var next=$(e.target).next("a:eq(0)");
if(next.length>0){
now.removeClass("focus");
next.addClass("focus");
next.focus();
}
}
else if(e.keyCode==38){
var clicked=$(e.target);
if(clicked.attr("tagName")=="P")clicked=clicked.parent("a");
else if(clicked.attr("tagName")=="UL")return;
var now=$(e.target);
var prev=$(e.target).prev("a");
if(prev.length>0){
now.removeClass("focus");
prev.addClass("focus");
prev.focus();
}
}
});
//返回下拉框的被选值//如果是多选,则会返回一串值构成的字符串,以逗号隔开
//此下拉框也可放在一般的FORM之中,并像普通的SELECT下拉菜单控件一样操作,当FORM提交时,后台可request获取一个被选取值的数组
this.getValue=function(){
return this.$select.val();
};
//绑定当控件中隐藏的SELECT的值变化以后,触发的方法,通过对其设置,可达到drop-on-drop的多个下拉框相互联动功能,参数Fn为要触发执行的函数
this.bindValueChange=function(Fn){
this.$select.bind("change", Fn);
};
//删除一个选择项,index为定位参数,从0开始(即第一行的选择项)
this.delItem=function(index){
if(index>-1&&index<this.$data.length){
this.$data.splice(index,1);
this.$select.get(0).options.remove(index);
this.$list.children("a:eq("+index+")").remove();
}
};
//增加一个选择项,项,index为定位参数,从0开始(即第一行的选择项)
this.addItem=function(index,Item){
if(index=this.$data.length){//如果是加在最末尾
this.$data[index]=Item;
this.$list.append("<a href='#'><p "+(this.$haveIcon? "style='text-indent:19px;background:"+Item[2]+"' " : "")+"value='"+Item[0]+"'>"+Item[1]+"</p></a>");
}
else{
this.$data.splice(index,0,Item);
this.$list.children("a:eq("+index+")").before("<a href='#'><p "+(this.$haveIcon? "style='text-indent:19px;background:"+Item[2]+"' " : "")+"value='"+Item[0]+"'>"+Item[1]+"</p></a>");
}
this.$select.get(0).options.add(new Option(Item[1], Item[0]));
};
//清除所有选项
this.clearItems=function(){
this.$data=null;
this.$data=[];
this.$list.empty();
this.$select.get(0).options.length=0;
this.$select.empty();
this.$alreadyLoad=false;
};
}
//将此类的构造函数加入至JQUERY对象中
jQuery.extend({
createGooCombo: function(dom,property) {
return new GooCombo(dom,property);










