当前位置: 首页 > news >正文

自做美食哪些网站开发商破产了购房者怎么办

自做美食哪些网站,开发商破产了购房者怎么办,北京网,网站备案收费么用过ant design的小伙伴都知道#xff0c;select组件是支持联想搜索跟上下键选中的效果的#xff0c;但是在项目中我们可能会遇到用select组件无法实现我们的需求的情况#xff0c;比如说一个div框#xff0c;里面有input#xff0c;又有tag标签#xff0c;在input中输入…用过ant design的小伙伴都知道select组件是支持联想搜索跟上下键选中的效果的但是在项目中我们可能会遇到用select组件无法实现我们的需求的情况比如说一个div框里面有input又有tag标签在input中输入内容触发联想然后选中其中某一个以tag标签的形式回填到div框中类似这种需求。这个时候我们可以采用ant design的dropdown组件来帮助我们实现。 getBoundingClientRect()方法可以获取元素的大小及其相对视口的位置这样可以帮助对元素是否在可视区域内进行判断 getBoundingClientRect() 是一个在 DOM文档对象模型中常用的方法它返回一个 DOMRect 对象 该对象提供了元素的大小及其相对于视口的位置。这个方法非常有用 特别是在需要知道元素在页面上的确切位置或尺寸时。DOMRect 对象包含以下属性x元素左上角相对于视口viewport的 x 坐标包括任何滚动偏移。 y元素左上角相对于视口viewport的 y 坐标包括任何滚动偏移。 width元素的宽度包括内边距 padding但不包括边框 border、外边距 margin 和滚动条。 height元素的高度包括内边距 padding但不包括边框 border、外边距 margin 和滚动条。 top元素顶部边缘相对于视口viewport的 y 坐标包括任何滚动偏移。 right元素右边缘相对于视口viewport的 x 坐标包括任何滚动偏移。 bottom元素底部边缘相对于视口viewport的 y 坐标包括任何滚动偏移。 left元素左边边缘相对于视口viewport的 x 坐标包括任何滚动偏移。 页面布局代码 需要根据实际情况来进行调整 componentDidMount(){// 添加键盘事件监听 document.addEventListener(keydown, this.handleKeyDown); }// 渲染下拉项 showGroupContcatMenu (){const {contactSearchList, currentFocusMenuIndex} this.state;return Menu{contactSearchList.map((item, index)(Menu.Item id{dropdown-menu-item- index} key{item.id} onClick{()this.handleSelectMenuItem(item)} style{{background: index currentFocusMenuIndex ? #fff5e6 : }}div{item.name}nbsp;nbsp;{item.enterpriseName}nbsp;nbsp;span{item.email ${item.email}}/span/div/Menu.Item))}Menu.Item id{dropdown-menu-item- contactSearchList.length} key{contactSearchList.length} style{{background: currentFocusMenuIndex contactSearchList.length ? #fff5e6 : }} onClick{()this.openGroupContcatIcon(null)}搜索联系人/Menu.Item/Menu}// 布局代码 div classNametag{selectContact.length 0 selectContact.map(item(Popover key{item.id} triggerclick content{Spin spinning{showPhoneLoading}span style{{userSelect:none}}{showPhoneLoading?:trueEmail}/span/Spin} overlayClassNamecontact-email-tiponVisibleChange{(visible) this.onPopoverVisibleChange(visible, item)}Tag key{item.id} closable{true} onClose{(e)this.handleClose(item.id,item,e,searchGroupContcat,contact)}{item.name}{item.hiddenEmail || item.email || item.disPlayEmail?spannbsp;nbsp;/span:}{item.hiddenEmail || item.email || item.disPlayEmail}/Tag/Popover))}Dropdown visible{onKeywordsContact ? true : false}overlay{()this.showGroupContcatMenu()} overlayClassNamebropdown-overlay-classdestroyPopupOnHide{true} div{getFieldDecorator(onKeywordsContact, {initialValue: ,})(AInput classNameinput onBlur{(e)this.handleBlur(onKeywordsContact)}onPressEnter{this.handleInputPressEnter}onChange{this.handleGroupContcatChange}/)}/div/Dropdown /div 监听键盘响应事件的核心代码 handleKeyDown (event) {const {onKeywordsContact, currentFocusMenuIndex, contactSearchList} this.statelet newCurrentFocusMenuIndex currentFocusMenuIndex;if (event.key ArrowUp onKeywordsContact) { event.preventDefault(); newCurrentFocusMenuIndex currentFocusMenuIndex 0 ? contactSearchList.length : currentFocusMenuIndex - 1;this.scrollIntoViewIfNeeded(newCurrentFocusMenuIndex, contactSearchList.length);} else if (event.key ArrowDown onKeywordsContact) { event.preventDefault(); newCurrentFocusMenuIndex currentFocusMenuIndex contactSearchList.length ? 0 : currentFocusMenuIndex 1;this.scrollIntoViewIfNeeded(newCurrentFocusMenuIndex, contactSearchList.length);} this.setState({currentFocusMenuIndex: newCurrentFocusMenuIndex // 记录当前选中高亮的元素}) }scrollIntoViewIfNeeded (newCurrentFocusMenuIndex, maxLength){const ulEle $(.bropdown-overlay-class .ant-dropdown-menu)[0];const liEle $(#dropdown-menu-item- newCurrentFocusMenuIndex)[0];const ulRect ulEle.getBoundingClientRect(); const liRect liEle.getBoundingClientRect();if(newCurrentFocusMenuIndex 0){ulEle.scrollTop 0;} else if(newCurrentFocusMenuIndex maxLength){ulEle.scrollTop ulEle.scrollHeight;} else {// 检查li是否在ul的上方 if (liRect.top ulRect.top) { // 滚动ul到li的顶部位置 ulEle.scrollTop liEle.offsetTop; } // 检查li是否在ul的下方这里假设我们不想滚动超过li的底部 else if (liRect.bottom ulRect.bottom) { // 滚动ul到li的底部位置减去ul的高度以确保li的底部在可视区域内 ulEle.scrollTop liEle.offsetTop liEle.offsetHeight - ulEle.offsetHeight; } }}
http://www.tj-hxxt.cn/news/228893.html

相关文章:

  • 湘西 网站 建设 公司鲜花销售网站模板
  • 佛山注册公司流程和费用标准淘宝关键词排名优化技巧
  • 信阳网站设计网站有必要使用伪静态么
  • 义乌网站建设工作室乐wordpress
  • 网站首页图片轮转自己做的网站怎么上传到网络
  • 北京哪家网站建设公司好营销型网站建设方案书
  • 网站404报错成都创意网站设计
  • 自己做网站写文章免费网站访客qq统计系统
  • 珠海专业机械网站建设wordpress视频网站模板下载
  • php响应式网站模板温州网站建设风格
  • 湘潭网站建设 技精磐石网络网站运营问题
  • 建设学分银行网站策划书自己做网站前端开发
  • 贵州省城乡建设部网站首页wordpress怎么链接
  • 免费做旅游海报的网站网站开发美工的任务
  • 专业网站建设制作价格低店面设计要素
  • 创建本地网站软件定制
  • 泸州作网站建设联系电话建设部网站如何登录监理工程师
  • 南京企业网站开发公司上海网站建设公司网站
  • 厦门好的网站设计个人网页免费域名注册入口
  • 网站优化标题不超过多少个字符网站建设致谢
  • 苏州市做网站东莞网站建设如何做
  • 淘宝电子网站建设论文有没有专门做中式的设计网站
  • 澎湃动力网站建设公司品牌销售策划方案
  • 京东物流网站建设特点重庆业务网站建设
  • jsp做网站用到什么技术wordpress 未分类
  • 网站开发案例分析wordpress会员查看
  • 深圳宝安网站建设公司推荐企业seo蜘蛛屯
  • 发布网站搭建教程素材网官网
  • 教程网站建设网站的后台在哪儿
  • 旅游网站这么做网络舆情案例分析