00:00
好,来,咱们接着上课,那么这节课呢,我们先讲一个小的知识点啊,这个知识点是什么呢?大家看一下,我们之前在这个list列表页里面,这不是有个轮播图吗?其实我点击轮播图的时候,它也能跳转。哎,点击轮播图的时候,它也能跳转,而且内容必须是和轮播图上边这个图片是对应的,对应的,哎,那呃,来到我们的项目,把这些呢先都关了,它打开P找到list这个结构,大家看一下,这是我们龙波图的地方。首先龙波图里边是不是有四个we h,哎,它的下边分别放了一张图片。那现在问题是这样的,我让他编一下我轮波图,它是可以滑动的,那我不管滑到哪,我一点击的时候必须找的是对应的。
01:00
现在的问题是,呃,我有四个item,那你说我要分别是不给他们四个去绑定点击事件呢?哎,分别绑定肯定是可以的。但是效率是不是太低了,有什么代理不叫代理的事件委托,咱们是不是昨天呃,周三的时候聊过这个事情啊,世界委托啊,那这个时候完全可以用世界委托,我可以委托给sweper这个负元素身上,那这个时候呢,我们可以给他起一个,你比如说我们先来一个吧,叫他,呃,诶,Catch keep,我先去绑定一个事件,那这个呢是car。嗯,CTO,哎,我们叫他OK,那现在又有一个方法,注意我是给sweeper身上绑定的,那接下来来到我们的GS里边,也就对应的,我还得来一个方法。
02:06
是它OK,那这个方法呢,是我们点击这个龙波图的时候,嗯,跳转OK,那点击它跳转跳转这个动作很简单。是他现在的问题是我是不是还得需要一个index才对啊,哎,这个index怎么找呢。你是不是还得想办法先把这个导入到这个事件对象里边。那再回顾一下,我们刚刚那种如何去整一个index出来,我们是不是在这。贝塔杠形式在这呢,特别好传,特别好传,因为啥在这它外层是不是便利出来的,我们正好传一个下标进去,关键是啊在这。
03:02
怎么传?你现在我问他能不能在这出。比如对他杠。你比如我这先给他传个一,能不能在这儿传呢。可以在这传,那如果说我在这儿传一个一的话,你不管点哪张,它都是一。那就不对了。也就是说,真正要给这个世界传递数据的,不应该在它的本身。你现在不是世界委托吗?那真正触发世界是不是含子元素啊,所以现当前这个传递参数的方式不应该是这样的诶。来,我们把这个删了,它不应该在这传,你应该在哪传,其实我在图片上传是不就可以,因为所以图片它不也是满屏的吗?所以在这我们来个data塔杠啊,比如说啊,我这呢,就没有什么一大了,你是不是只能自己去写,因为咱们龙模头的图片它的张数也不多,所以呢,我可以分别的把这个拿走,嗯,来拿到这他一个他一个,我现在不是写了四个,那我们就可以传一个零啊一。
04:28
二那这个呢是三。大家懂这个意思吗?啊来CTRLS保存一下,那这个时候来到例子下面啊,我们还得先把这个注脚,要不然它是报错的,我们去整一个event,那么接下来呢。等一下啊,桌子有点,接下来我去点这个,我们来看一下。
05:01
打开我们的调试器,来到控制台走,注意这是当前的,我们之前是在哪找来着target对吧?来看有吗?现在是不是没有啊,哎,那传到哪了呢?大家看,其实有一个我们比current target还要更熟悉一点,叫target。对吧,来我们点击一下它,我们来看一下。你会发现它传到这儿了。啊,那这是为什么呢。之前我们在这我点击这个的时候,来我们对比一下它是不是放到了car target里面。对吧,我们取的是这个吧,那什么时候它会放到current target,什么时候放到target里面的。那这个时候我们就要讲一下这个current target和target它俩的一个区别。
06:04
我问一下大家那个什么意思,当前的,嗯,那这个时候我们就要说一下呃。我们刚用了个事件委托,事件委托里面真正触发事件的是谁?一定是当前元素吗?什么叫当前元素?大家看我的世界是不是被绑定在负元素身上了,那如果说是当前元素的话,是不是应该是它本身啊?但是你看我传数据的是不是一位着是它本身吗?不是,而我们点击的这些是不是正好就是一位呀?那世界委托里面真正触发事件的是谁啊?世界委托一定要搞明白,一个是原理对吧,一个是好处,一个是真正触发世界的是谁。
07:02
就在世界委托里面,我怎么找到触发事件的元素?点target,哎,那其实这样的话,大家明白这个以后,我们应该是能理解上边这个为什么放到target里面。你点的什么图片?而我传递数据是不是就在图片身上传的?嗯,所以它放到target里边了,那回头咱们再来看一个东西,哎,下边这些为什么就放到car target呢?你得看我们当初是怎么写的。我绑定事件和传递数据是不是都在这个V这个容器本身上面,而我们点击的是不是也是V有这容器啊,所以呢,它放到car target就是当前元素。给大家总结一下这个区别,就是说current target指的是当前的元素,而target是触发事件的元素。
08:08
触发事件的问题啊,那这个区别呢,我给大家这个课件里面呢,其实也给大家呃,列出来了,我们下边这啊,我在这儿一个是触发事件的,一个是捕获,捕获其实就是当前的元素。因为我们是不是在它本身上面出发了,哎,这个呢,也是大家需要掌握的一个点啊,需要掌握的一个点,OK,那说完这个以后,那么我们来到这,我就可以把这个打开,让它去跳转,既然event我们找到了这个index,所以呢,我在这可以去列一个,这应该是event.target.data set.index。OK,那这个时候来,咱们去重新编译一下,我点击这个轮播图。
09:01
首先能跳转了对吧?啊,这个图片不对呢,是因为我把上面这个数据里面的两个对象换了一下位置,呃,告诉大家怎么去调整它,这个换成一,这个换成零就好了,这些到无关紧要,是是因为这个数据也是我设计的,你看啊,现在我再点击它。这是不对的,那我们这换一张吧,这个。也对的吧,啊,那这样的话,轮播图这个点击跳转呢,我们就整完了啊在这其实就是想讲一下那个current和current target和那个target的区别,OK,来,我们先把这个停一下。
我来说两句