搜索框效果:
React Html:
<form onSubmit={e => this.searchItem(keyword, e)}> <img src="./images/icons/search-icon.png" className="search-icon" /> <input type="search" autoFocus={!searchResult.scrollTop} value={keyword} onChange={e => this.setKeyword(e.target.value)} placeholder="搜索商城商品" onFocus={keyword?null:()=>this.switchTips(true)} /> <span onClick={() => this.searchItem(keyword)}>搜索</span> </form> // or <form onSubmit={e => this.searchItem(keyword, e)}> <img src="./images/icons/search-icon.png" className="search-icon" /> <input type="search" autoFocus={!searchResult.scrollTop} value={keyword} onChange={e => this.setKeyword(e.target.value)} placeholder="搜索商城商品" onFocus={keyword?null:()=>this.switchTips(true)} /> <input type="submit" value="搜索" /> </form>
Search Function:
searchItem(keyword, e) { if (e) e.preventDefault(); keyword = keyword.trim(); document.activeElement.blur(); // 很关键的一部,失去焦点,兼容IOS if (keyword) { SearchActions.byKeyword(keyword); } }
Css Style:
.search-bar padding: .5em 1em; background: $bgColor; .search-icon position: absolute; margin-left: 10px; margin-top: 7px; width: 1.4em; input height: 30px; width: 73%; outline: none; border-radius: 15px; border $borderStyle padding-left: 2.6em; margin-right: 10px; /* Or */ .search-bar padding: .5em 1em; background: $bgColor; .search-icon position: absolute; margin-left: 10px; margin-top: 7px; width: 1.4em; input[type=search] height: 30px; width: 73%; outline: none; border-radius: 15px; border $borderStyle padding-left: 2.6em; margin-right: 10px; input[type=submit] background none border: none; outline none
相关推荐
在React Native(RN)开发过程中,兼容性问题往往是开发者面临的一大挑战。这些问题主要涉及到不同操作系统,尤其是Android平台的差异。以下是一些常见的RN兼容性问题及其解决方案: 1. **文字超出容器** 当在...
10. **无障碍性(Accessibility)**:考虑到残障用户的需求,拖拽排序功能应提供键盘导航和辅助技术支持。 了解并掌握这些知识点,开发者就能构建出高效、易用且具有流畅体验的拖拽排序功能,像支付宝那样提升用户...
3. **AJAX异步请求**:为了获取和更新城市数据,开发者可能使用AJAX(Asynchronous JavaScript and XML)技术,实现页面无刷新的数据交换。XMLHttpRequest对象是实现AJAX的核心,现在通常配合Promise或者async/await...
标题中的“多端同步使用轮播组件”指的是在不同设备平台上(如Web、iOS、Android等)实现统一的轮播图展示功能,并且这些展示能够实时同步,保持一致的用户体验。轮播组件(Slide)是网页和应用设计中常用的一种元素...
8. **移动开发**:通过框架如React Native或Ionic,JavaScript可以用于开发原生移动应用程序,跨平台兼容iOS和Android。 9. **服务器端JavaScript**:Node.js允许JavaScript运行在服务器端,构建全栈应用,实现后端...