uni-app学习记录05-二级联动及获取DOM对象
<template>
<view>
<view class="id">
<view class="left">
<view v-for="(item, index) in list" :key="index" @click="qiehuan(index)" :class="{ box6: ys == index }">{{ item.title }}</view>
</view>
<view class="rigth">
<!-- :scroll-into-view可以设置让子菜单滚动 -->
<scroll-view :scroll-y="true" class="box4" style="height: 200px;" :scroll-into-view="aid" scroll-with-animation @scroll="scroll" @scrolltolower="scrolltolower">
<view v-for="(item, index) in list" :key="index" :id="'po' + index" class="tatle">
{{ item.title }}
<view v-for="(it, idx) in item.list" :key="idx">{{ it }}</view>
</view>
</scroll-view>
</view>
</view>
</view>
</template> <script>
export default {
data() {
return {
list: [
{ title: '华为', list: ['华为1', '华为2', '华为3', '华为4', '华为5', '华为6', '华为7'] },
{ title: '小米', list: ['小米1', '小米2', '小米3', '小米4', '小米5', '小米6', '小米7'] },
{ title: '苹果', list: ['苹果1', '苹果2', '苹果3', '苹果4', '苹果5', '苹果6', '苹果7'] },
{ title: '魅族', list: ['魅族1', '魅族2', '魅族3', '魅族4', '魅族5', '魅族6', '魅族7'] },
{ title: '三星', list: ['三星1', '三星2', '三星3', '三星4', '三星5', '三星6', '三星7'] }
],
aid: '',
ys: '',
topList: []
};
},
onReady() {
this.getInfo();
},
methods: {
test(e) {
// console.log(e.detail.current)
},
qiehuan(index) {
this.aid = 'po' + index;
this.ys = index;
},
scroll(e) {
// 获取到每次滑动的坐标top
let scrollTop = parseInt(e.target.scrollTop);
// 循环去判断当前top值处于哪个值 然后左边随着滑动
for (let i = 0; i < this.topList.length; i++) {
let h1 = this.topList[i];
let h2 = this.topList[i + 1];
if (scrollTop >= h1 && scrollTop < h2) {
this.ys = i;
}
}
},
scrolltolower() {
setTimeout(() => {
this.ys = 4;
},80);
},
getInfo() {
// 下面代码可以获取元素对象
const query = uni.createSelectorQuery().in(this);
query.selectAll('.tatle').boundingClientRect().exec(res => {
console.log(res)
let nodes = res[0];
let rel = [];
nodes.map(item => {
rel.push(item.top);
});
this.topList = rel;
});
}
}
};
</script> <style lang="scss">
swiper {
height: 240px;
}
.box1 {
display: inline-block;
width: 200px;
height: 100px;
background: #007aff;
border: 1px solid red;
} .box2 {
display: inline-block;
width: 200px;
height: 100px;
background: #f0f0f0;
border: 1px solid red;
} .box3 {
display: inline-block;
width: 200px;
height: 100px;
background: #00ff00;
border: 1px solid red;
}
.box5 {
text-align: center;
width: 100%;
height: 100%;
}
.box4 {
white-space: nowrap;
}
.id {
display: flex;
.left {
width: 100px;
border: 1px solid red;
}
.rigth {
flex: 1;
}
}
.box6 {
background: #4cd964;
}
</style>
uni-app学习记录05-二级联动及获取DOM对象的更多相关文章
- "美团"APP学习记录知识点
1.APP进入加载广告视图展示: -(void)initAdvView{ // 判断图片是否已经存在 NSArray *paths = NSSearchPathForDirectoriesInDoma ...
- react+redux+react-router+node.js 开发实时聊天App 学习记录
一.课程导学 1.React 主要解决的是UI层的问题,应用的状态需要借助Redux等状态管理. 2.前端React + antd-mobile UI组件库 + Redux 状态管理库 + Rea ...
- [原创]java WEB学习笔记05:Servlet中的ServletConfig对象
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- JavaWeb学习记录(八)——servlet获取配置信息
jdbc.properties内容如下: jdbcUrl=jdbc\:mysql\://localhost\:3306/animaluser=rootpass=root servlet获取资源信息代码 ...
- [jQuery学习系列一]1-选择器与DOM对象
前言: 好久没有更新博客了, 最近想复习下 之前学过的JS的相关内容, 也算是自己的一种总结. 知识长时间不用就会忘记, 多学多记多用!! 下面的程序都可以在下面的网站进行在线调试: http://w ...
- Jquery学习笔记:通过层次关系获取jquery对象
前面一篇文章,我们介绍了如何通过web标签的id , css样式值来获取jquery对象. 但这只是基本方法,不能满足所有场景的需求. 本文介绍通过dom元素之间的层次关系获取元素.具体是将各种标识符 ...
- web前端学习(四)JavaScript学习笔记部分(7)-- JavaScript DOM对象控制HTML元素详解
1.方法 getElementsByName() 获取name 可以获取一个数组类型数据(参数加引号) getElementsByTagName() 获取元素 getAttribute() 获取元 ...
- JavaScript学习笔记 - 进阶篇(8)- DOM对象,控制HTML元素
认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 先来看看下面代码 ...
- JavaScript学习记录总结(七)——dom对象应用之用户简单管理
<!DOCTYPE html><html><head><title>users.html</title> <meta name=&qu ...
随机推荐
- Python 五个知识点搞定作用域
Python 五个知识点搞定作用域 1.块级作用域 想想此时运行下面的程序会有输出吗?执行会成功吗? #块级作用域 if 1 == 1: name = "lzl" print(na ...
- 订阅 如何在IntelliJ IDEA中使用.ignore插件忽略不必要提交的文件
如何在IntelliJ IDEA中使用.ignore插件忽略不必要提交的文件 标签: idea git 插件 分类: Git 最近初学Git,而且在使用的IDE是IntelliJ IDEA,发现IDE ...
- Effective Modern C++:07并发API
C++11的志伟功勋之一,就是将并发融入了语言和库中,因此在C++的历史上,程序员可以首次跨越所有平台撰写具有标准行为的多线程程序. 35:优先选用基于任务而非基于线程的程序设计 如果需要以异步的方式 ...
- 阿里云王广芳:5G时代,我们需要怎样的边缘计算?
7月24日阿里云峰会开发者大会的IT基础设施云化专场中,阿里云边缘计算高级技术专家王广芳进行了边缘节点服务重大升级发布,同时与现场观众一同探讨了5G时代边缘计算的思考与技术实践. 5G时代,我们需要怎 ...
- Mathematica 和 MATLAB、Maple 并称为三大数学软件
Mathematica是一款科学计算软件,很好地结合了数值和符号计算引擎.图形系统.编程语言.文本系统.和与其他应用程序的高级连接.很多功能在相应领域内处于世界领先地位,它也是使用最广泛的数学软件之一 ...
- 阿里小二的日常工作要被TA们“接管”了!
昨天有人偷偷告诉我说 阿里巴巴其实是一家科技公司! 我想了整整一夜 究竟是谁走漏了风声 那么重点来了,阿里到底是如何在内部的办公.生活中,玩转“黑科技”的呢? AI取名:给你专属的“武侠”花名 花名是 ...
- Java面向对象----继承概念,super关键字
继承概念: 继承需要符合的关系 is-a , 父类通用更抽象,子类更特殊更具体 类之间的关系 继承体现 组合体现 实现接口体现 继承的意义 代码重用 体现不同抽象层次 extends关键字 Sup ...
- pictures
- android去掉layout顶部的阴影(状态栏下边的阴影)
http://blog.csdn.net/kepoon/article/details/7207100
- Java练习 SDUT-2174_回文时间
回文时间 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description HH 每天都会熬夜写代码,然后很晚才睡觉,但是每天早晨六点多必 ...