/* * jq对象,要显示那些元素[],要隐藏那些元素[] */ function toggleOptionShow(obj,arrShow,arrHide){ function arrHandle(arr,type){ if($.isArray(arr)){ var len=arr.length; for(i=0;i<len;i++){ var optionNow=obj.find("option").eq(arr[i]); var optionP=optionNow.parent("span");//开始是没有span标签的,看下面if---else 的判断 if(type=="show"){ if(optionP.size()){ //如果optionP为 undefine 不走这个逻辑 //optionP.children().clone() 找到optionP也就是span标签下的Option并进行克隆 //optionP.children().clone().replaceAll(optionP)删除隐藏的span使用上面克隆的option,达到显示的效果。 optionP.children().clone().replaceAll(optionP); } }else{ if(!optionP.size()){ //如果optionP为 undefine 走这个逻辑,中心是想就是根据span标签控制显示隐藏,因为在ios上无法给option使用hide标签; optionNow.wrap("<span style='display:none'></span>"); } } } } } arrHandle(arrShow,"show"); arrHandle(arrHide,"hide"); }
ios 自定义隐藏或显示option
最新推荐文章于 2021-06-04 01:15:27 发布