uni-app中仿微信列表长按弹出选择菜单
<p>1、实现效果:</p><p><img src="https://img2020.cnblogs.com/blog/1860986/202006/1860986-20200630084232555-1110334727.png"></p>
<p>2、此链接引入uni-app插件:https://ext.dcloud.net.cn/plugin?id=678</p>
<p>3、view段:</p>
<div class="cnblogs_code">
<pre><template>
<view>
<view <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">list</span><span style="color: rgba(128, 0, 0, 1)">"</span>>
<view <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">flex_col</span><span style="color: rgba(128, 0, 0, 1)">"</span> @longpress=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">onLongPress</span><span style="color: rgba(128, 0, 0, 1)">"</span> :<span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">{'active':pickerUserIndex==index}</span><span style="color: rgba(128, 0, 0, 1)">"</span> @tap=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">listTap</span><span style="color: rgba(128, 0, 0, 1)">"</span> v-<span style="color: rgba(0, 0, 255, 1)">for</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">(item,index) in userList</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">
:key</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">index</span><span style="color: rgba(128, 0, 0, 1)">"</span> :data-index=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">index</span><span style="color: rgba(128, 0, 0, 1)">"</span>>
<image src=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">../../static/logo.png</span><span style="color: rgba(128, 0, 0, 1)">"</span> mode=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">aspectFill</span><span style="color: rgba(128, 0, 0, 1)">"</span>></image>
<view <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">flex_grow</span><span style="color: rgba(128, 0, 0, 1)">"</span>>
<view <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">flex_col</span><span style="color: rgba(128, 0, 0, 1)">"</span>>
<view <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">flex_grow</span><span style="color: rgba(128, 0, 0, 1)">"</span>>{{item.name}}</view>
<view <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">time</span><span style="color: rgba(128, 0, 0, 1)">"</span>>{{item.time}}</view>
</view>
<view <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">info</span><span style="color: rgba(128, 0, 0, 1)">"</span>>{{item.info}}</view>
</view>
</view>
</view>
<view <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">shade</span><span style="color: rgba(128, 0, 0, 1)">"</span> v-show=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">showShade</span><span style="color: rgba(128, 0, 0, 1)">"</span> @tap=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">hidePop</span><span style="color: rgba(128, 0, 0, 1)">"</span>>
<view <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">pop</span><span style="color: rgba(128, 0, 0, 1)">"</span> :style=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">popStyle</span><span style="color: rgba(128, 0, 0, 1)">"</span> :<span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">{'show':showPop}</span><span style="color: rgba(128, 0, 0, 1)">"</span>>
<view v-<span style="color: rgba(0, 0, 255, 1)">for</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">(item,index) in popButton</span><span style="color: rgba(128, 0, 0, 1)">"</span> :key=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">index</span><span style="color: rgba(128, 0, 0, 1)">"</span> @tap=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">pickerMenu</span><span style="color: rgba(128, 0, 0, 1)">"</span> :data-index=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">index</span><span style="color: rgba(128, 0, 0, 1)">"</span>>{{item}}</view>
</view>
</view>
</view>
</template></pre>
</div>
<p>4、script段代码:</p>
<div class="cnblogs_code">
<pre><script><span style="color: rgba(0, 0, 0, 1)">
export </span><span style="color: rgba(0, 0, 255, 1)">default</span><span style="color: rgba(0, 0, 0, 1)"> {
data() {
</span><span style="color: rgba(0, 0, 255, 1)">return</span><span style="color: rgba(0, 0, 0, 1)"> {
userList: [],
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 窗口尺寸 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
winSize: {},
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 显示遮罩 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
showShade: </span><span style="color: rgba(0, 0, 255, 1)">false</span><span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 显示操作弹窗 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
showPop: </span><span style="color: rgba(0, 0, 255, 1)">false</span><span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 弹窗按钮列表 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
popButton: [</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">标为关注</span><span style="color: rgba(128, 0, 0, 1)">"</span>, <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">置顶聊天</span><span style="color: rgba(128, 0, 0, 1)">"</span>, <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">删除该聊天</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">],
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 弹窗定位样式 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
popStyle: </span><span style="color: rgba(128, 0, 0, 1)">""</span><span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 选择的用户下标 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
pickerUserIndex: </span>-<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
}
},
onLoad() {
</span><span style="color: rgba(0, 0, 255, 1)">this</span><span style="color: rgba(0, 0, 0, 1)">.getListData();
</span><span style="color: rgba(0, 0, 255, 1)">this</span><span style="color: rgba(0, 0, 0, 1)">.getWindowSize();
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> #ifdef H5</span>
document.onLong =<span style="color: rgba(0, 0, 0, 1)"> function(e) {
</span><span style="color: rgba(0, 0, 255, 1)">var</span> e = e || window.<span style="color: rgba(0, 0, 255, 1)">event</span><span style="color: rgba(0, 0, 0, 1)">;
e.preventDefault();
};
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> #endif</span>
<span style="color: rgba(0, 0, 0, 1)"> },
methods: {
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 列表触摸事件 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
listTap() {
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 因弹出遮罩问题,所以需要在遮罩弹出的情况下阻止列表事件的触发 </span><span style="color: rgba(0, 128, 0, 1)">*/</span>
<span style="color: rgba(0, 0, 255, 1)">if</span> (<span style="color: rgba(0, 0, 255, 1)">this</span><span style="color: rgba(0, 0, 0, 1)">.showShade) {
</span><span style="color: rgba(0, 0, 255, 1)">return</span><span style="color: rgba(0, 0, 0, 1)">;
}
console.log(</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">列表触摸事件触发</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">)
},
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 获取列表数据 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
getListData() {
let list </span>=<span style="color: rgba(0, 0, 0, 1)"> [];
</span><span style="color: rgba(0, 0, 255, 1)">for</span> (let i = <span style="color: rgba(128, 0, 128, 1)">0</span>; i < <span style="color: rgba(128, 0, 128, 1)">20</span>; i++<span style="color: rgba(0, 0, 0, 1)">) {
list.push({
</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">name</span><span style="color: rgba(128, 0, 0, 1)">"</span>: `第${i+<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">}个用户`,
</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">time</span><span style="color: rgba(128, 0, 0, 1)">"</span>: <span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(128, 0, 0, 1)">5月20日</span><span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">info</span><span style="color: rgba(128, 0, 0, 1)">"</span>: `这是第${i+<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">}个用户的聊天信息`
})
}
</span><span style="color: rgba(0, 0, 255, 1)">this</span>.userList =<span style="color: rgba(0, 0, 0, 1)"> list;
},
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 获取窗口尺寸 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
getWindowSize() {
uni.getSystemInfo({
success: (res) </span>=><span style="color: rgba(0, 0, 0, 1)"> {
</span><span style="color: rgba(0, 0, 255, 1)">this</span>.winSize =<span style="color: rgba(0, 0, 0, 1)"> {
</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">witdh</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">: res.windowWidth,
</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">height</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">: res.windowHeight
}
}
})
},
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 长按监听 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
onLongPress(e) {
let </span>= , <span style="color: rgba(128, 0, 0, 1)">""</span><span style="color: rgba(0, 0, 0, 1)">, e.currentTarget.dataset.index];
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 因 非H5端不兼容 style 属性绑定 Object ,所以拼接字符 </span><span style="color: rgba(0, 128, 0, 1)">*/</span>
<span style="color: rgba(0, 0, 255, 1)">if</span> (touches.clientY > (<span style="color: rgba(0, 0, 255, 1)">this</span>.winSize.height / <span style="color: rgba(128, 0, 128, 1)">2</span><span style="color: rgba(0, 0, 0, 1)">)) {
style </span>= `bottom:${<span style="color: rgba(0, 0, 255, 1)">this</span>.winSize.height-<span style="color: rgba(0, 0, 0, 1)">touches.clientY}px;`;
} </span><span style="color: rgba(0, 0, 255, 1)">else</span><span style="color: rgba(0, 0, 0, 1)"> {
style </span>=<span style="color: rgba(0, 0, 0, 1)"> `top:${touches.clientY}px;`;
}
</span><span style="color: rgba(0, 0, 255, 1)">if</span> (touches.clientX > (<span style="color: rgba(0, 0, 255, 1)">this</span>.winSize.witdh / <span style="color: rgba(128, 0, 128, 1)">2</span><span style="color: rgba(0, 0, 0, 1)">)) {
style </span>+= `right:${<span style="color: rgba(0, 0, 255, 1)">this</span>.winSize.witdh-<span style="color: rgba(0, 0, 0, 1)">touches.clientX}px`;
} </span><span style="color: rgba(0, 0, 255, 1)">else</span><span style="color: rgba(0, 0, 0, 1)"> {
style </span>+=<span style="color: rgba(0, 0, 0, 1)"> `left:${touches.clientX}px`;
}
</span><span style="color: rgba(0, 0, 255, 1)">this</span>.popStyle =<span style="color: rgba(0, 0, 0, 1)"> style;
</span><span style="color: rgba(0, 0, 255, 1)">this</span>.pickerUserIndex =<span style="color: rgba(0, 0, 0, 1)"> Number(index);
</span><span style="color: rgba(0, 0, 255, 1)">this</span>.showShade = <span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">;
</span><span style="color: rgba(0, 0, 255, 1)">this</span>.$nextTick(() =><span style="color: rgba(0, 0, 0, 1)"> {
setTimeout(() </span>=><span style="color: rgba(0, 0, 0, 1)"> {
</span><span style="color: rgba(0, 0, 255, 1)">this</span>.showPop = <span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">;
}, </span><span style="color: rgba(128, 0, 128, 1)">10</span><span style="color: rgba(0, 0, 0, 1)">);
});
},
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 隐藏弹窗 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
hidePop() {
</span><span style="color: rgba(0, 0, 255, 1)">this</span>.showPop = <span style="color: rgba(0, 0, 255, 1)">false</span><span style="color: rgba(0, 0, 0, 1)">;
</span><span style="color: rgba(0, 0, 255, 1)">this</span>.pickerUserIndex = -<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">;
setTimeout(() </span>=><span style="color: rgba(0, 0, 0, 1)"> {
</span><span style="color: rgba(0, 0, 255, 1)">this</span>.showShade = <span style="color: rgba(0, 0, 255, 1)">false</span><span style="color: rgba(0, 0, 0, 1)">;
}, </span><span style="color: rgba(128, 0, 128, 1)">250</span><span style="color: rgba(0, 0, 0, 1)">);
},
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 选择菜单 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
pickerMenu(e) {
let index </span>=<span style="color: rgba(0, 0, 0, 1)"> Number(e.currentTarget.dataset.index);
console.log(`第${</span><span style="color: rgba(0, 0, 255, 1)">this</span>.pickerUserIndex+<span style="color: rgba(128, 0, 128, 1)">1</span>}个用户,第${index+<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">}个按钮`);
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 在这里开启你的代码秀</span>
<span style="color: rgba(0, 0, 0, 1)">
uni.showToast({
title: `第${</span><span style="color: rgba(0, 0, 255, 1)">this</span>.pickerUserIndex+<span style="color: rgba(128, 0, 128, 1)">1</span>}个用户,第${index+<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">}个按钮`,
icon: </span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">none</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">,
mask: </span><span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">,
duration: </span><span style="color: rgba(128, 0, 128, 1)">600</span><span style="color: rgba(0, 0, 0, 1)">
});
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">
因为隐藏弹窗方法中会将当前选择的用户下标还原为-1,
如果行的菜单方法存在异步情况,请在隐藏之前将该值保存,或通过参数传入异步函数中
</span><span style="color: rgba(0, 128, 0, 1)">*/</span>
<span style="color: rgba(0, 0, 255, 1)">this</span><span style="color: rgba(0, 0, 0, 1)">.hidePop();
}
}
}
</span></script></pre>
</div>
<p>5、style代码</p>
<div class="cnblogs_code">
<pre><style scoped lang=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">scss</span><span style="color: rgba(128, 0, 0, 1)">"</span>>
<span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 列式弹性盒子 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
.flex_col {
display: flex;
flex</span>-<span style="color: rgba(0, 0, 0, 1)">direction: row;
flex</span>-<span style="color: rgba(0, 0, 0, 1)">wrap: nowrap;
justify</span>-content: flex-<span style="color: rgba(0, 0, 0, 1)">start;
align</span>-<span style="color: rgba(0, 0, 0, 1)">items: center;
align</span>-<span style="color: rgba(0, 0, 0, 1)">content: center;
}
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 弹性盒子弹性容器 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
.flex_col .flex_grow {
width: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">;
</span>-webkit-box-flex: <span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">;
</span>-ms-flex-positive: <span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">;
flex</span>-grow: <span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">;
}
.flex_row .flex_grow {
</span>-webkit-box-flex: <span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">;
</span>-ms-flex-positive: <span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">;
flex</span>-grow: <span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">;
}
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 弹性盒子允许换行 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
.flex_col.flex_wrap {
</span>-ms-flex-<span style="color: rgba(0, 0, 0, 1)">wrap: wrap;
flex</span>-<span style="color: rgba(0, 0, 0, 1)">wrap: wrap;
}
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 列表 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
.list {
background</span>-<span style="color: rgba(0, 0, 0, 1)">color: #fff;
font</span>-<span style="color: rgba(0, 0, 0, 1)">size: 28upx;
color: #</span><span style="color: rgba(128, 0, 128, 1)">333</span><span style="color: rgba(0, 0, 0, 1)">;
user</span>-<span style="color: rgba(0, 0, 255, 1)">select</span><span style="color: rgba(0, 0, 0, 1)">: none;
touch</span>-<span style="color: rgba(0, 0, 0, 1)">callout: none;
</span>&><span style="color: rgba(0, 0, 0, 1)">view {
padding: 24upx 30upx;
position: relative;
</span>&<span style="color: rgba(0, 0, 0, 1)">:active,
</span>&<span style="color: rgba(0, 0, 0, 1)">.active {
background</span>-<span style="color: rgba(0, 0, 0, 1)">color: #f3f3f3;
}
image {
height: 80upx;
width: 80upx;
border</span>-<span style="color: rgba(0, 0, 0, 1)">radius: 4px;
margin</span>-<span style="color: rgba(0, 0, 0, 1)">right: 20upx;
}
</span>&><span style="color: rgba(0, 0, 0, 1)">view {
line</span>-<span style="color: rgba(0, 0, 0, 1)">height: 40upx;
.time,
.info {
color: #</span><span style="color: rgba(128, 0, 128, 1)">999</span><span style="color: rgba(0, 0, 0, 1)">;
font</span>-<span style="color: rgba(0, 0, 0, 1)">size: 24upx;
}
.time {
width: 150upx;
text</span>-<span style="color: rgba(0, 0, 0, 1)">align: right;
}
.info {
overflow: hidden;
text</span>-<span style="color: rgba(0, 0, 0, 1)">overflow: ellipsis;
white</span>-<span style="color: rgba(0, 0, 0, 1)">space: nowrap;
}
}
}
</span>&>view:not(:first-<span style="color: rgba(0, 0, 0, 1)">child) {
margin</span>-<span style="color: rgba(0, 0, 0, 1)">top: 1px;
</span>&<span style="color: rgba(0, 0, 0, 1)">::after {
content: </span><span style="color: rgba(128, 0, 0, 1)">''</span><span style="color: rgba(0, 0, 0, 1)">;
display: block;
height: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">;
border</span>-<span style="color: rgba(0, 0, 0, 1)">top: #CCC solid 1px;
width: 620upx;
position: absolute;
top: </span>-<span style="color: rgba(0, 0, 0, 1)">1px;
right: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">;
transform:scaleY(</span><span style="color: rgba(128, 0, 128, 1)">0.5</span>); <span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 1px像素 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
}
}
}
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 遮罩 </span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
.shade {
position: </span><span style="color: rgba(0, 0, 255, 1)">fixed</span><span style="color: rgba(0, 0, 0, 1)">;
z</span>-index: <span style="color: rgba(128, 0, 128, 1)">100</span><span style="color: rgba(0, 0, 0, 1)">;
top: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">;
right: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">;
bottom: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">;
left: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">;
</span>-webkit-touch-<span style="color: rgba(0, 0, 0, 1)">callout: none;
.pop {
position: </span><span style="color: rgba(0, 0, 255, 1)">fixed</span><span style="color: rgba(0, 0, 0, 1)">;
z</span>-index: <span style="color: rgba(128, 0, 128, 1)">101</span><span style="color: rgba(0, 0, 0, 1)">;
width: 200upx;
box</span>-sizing: border-<span style="color: rgba(0, 0, 0, 1)">box;
font</span>-<span style="color: rgba(0, 0, 0, 1)">size: 28upx;
text</span>-<span style="color: rgba(0, 0, 0, 1)">align: left;
color: #</span><span style="color: rgba(128, 0, 128, 1)">333</span><span style="color: rgba(0, 0, 0, 1)">;
background</span>-<span style="color: rgba(0, 0, 0, 1)">color: #fff;
box</span>-shadow: <span style="color: rgba(128, 0, 128, 1)">0</span> <span style="color: rgba(128, 0, 128, 1)">0</span> 5px rgba(<span style="color: rgba(128, 0, 128, 1)">0</span>, <span style="color: rgba(128, 0, 128, 1)">0</span>, <span style="color: rgba(128, 0, 128, 1)">0</span>, <span style="color: rgba(128, 0, 128, 1)">0.5</span><span style="color: rgba(0, 0, 0, 1)">);
line</span>-<span style="color: rgba(0, 0, 0, 1)">height: 80upx;
transition: transform </span><span style="color: rgba(128, 0, 128, 1)">0</span>.15s ease-<span style="color: rgba(0, 0, 255, 1)">in</span>-<span style="color: rgba(0, 0, 255, 1)">out</span><span style="color: rgba(0, 0, 0, 1)"> 0s;
user</span>-<span style="color: rgba(0, 0, 255, 1)">select</span><span style="color: rgba(0, 0, 0, 1)">: none;
</span>-webkit-touch-<span style="color: rgba(0, 0, 0, 1)">callout: none;
transform: scale(</span><span style="color: rgba(128, 0, 128, 1)">0</span>, <span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">);
</span>&<span style="color: rgba(0, 0, 0, 1)">.show {
transform: scale(</span><span style="color: rgba(128, 0, 128, 1)">1</span>, <span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">);
}
</span>&><span style="color: rgba(0, 0, 0, 1)">view {
padding: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)"> 20upx;
overflow: hidden;
text</span>-<span style="color: rgba(0, 0, 0, 1)">overflow: ellipsis;
white</span>-<span style="color: rgba(0, 0, 0, 1)">space: nowrap;
user</span>-<span style="color: rgba(0, 0, 255, 1)">select</span><span style="color: rgba(0, 0, 0, 1)">: none;
</span>-webkit-touch-<span style="color: rgba(0, 0, 0, 1)">callout: none;
</span>&<span style="color: rgba(0, 0, 0, 1)">:active {
background</span>-<span style="color: rgba(0, 0, 0, 1)">color: #f3f3f3;
}
}
}
}
</span></style></pre>
</div>
<p> </p><br><br>
来源:https://www.cnblogs.com/menxiaojin/p/13211714.html
頁:
[1]