angular2--怎么实现城市列表选择功能,类似于通信录功能

本文介绍了如何在Angular2中实现类似通信录的城市列表选择功能,包括点击字母跳转、滑动高亮和选中城市显示。通过格式化数据和编写相关代码,实现了从数据到界面的渲染。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实现效果如下:

一、右侧有26个字母,用户点击字母的时候,列表会跳到对应字母的城市区域
二、页面滑动的时候,经过的城市区域,在右侧字母列表处有高亮提示
三、用户选择一个城市的时候,选择的城市信息会显示在头部==》当前城市位置

代码实现步骤:

一、在头部定义一个盒子,用于接收用户选择的城市

<div class="city-box">
  <div class="city-header">当前城市</div>
  <div class="city-body city-list" *ngIf="cityType">
      <div class="city-item active">{
  
  {cityType}}</div>
   </div>
</div>

二、接着就是要循环渲染各个字母对应的城市名称列表了

<div class="city-box" #cityBox (scroll)="noscroll($event)">
    <div *ngFor="let item of cityList">
       <!-- 对应的英文字母-->
      <p class="city-header" [id]="'city-'+item.cityIndex">{
  
  {item.cityIndex}}</p>     
       <!-- 每个对应字母下的城市列表-->
      <div class="city-body city-list border-btm">    
        <div class="city-item" *ngFor="let i of item.cityList" 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值