老师,对于点击左侧目录,右侧出现相应的内容列表的实现,我还是不太明白。

来源:1-6 详情页-右侧数据渲染(3)

慕移动0023355

2019-08-25 13:08:32

http://img.mukewang.com/climg/5d6213220001fa9304590501.jpg

老师,对于点击左侧目录,右侧出现相应的内容列表的实现,我还是不太明白。

在left.js中添加addclick函数,通过获取$(e.currentTarget).data就能得到右侧对应的列表数据吗?$target.data('itemData',item); 这里的itemData是每一项左侧目录对应的右侧列表数据吗?

function addClick(){
    $('.menu-inner').on('click', '.left-item', function(e){
        var $target = $(e.currentTarget);
        

        $target.addClass('active');
        $target.siblings().removeClass('active');

        // 将数据传给右侧详情列表进行渲染
        window.Right.refresh($target.data('itemData'));

    });
}
写回答

1回答

Miss路

2019-08-25

同学,你好,你说的是对的。因为在上面的方法中,已经通过forEach方法,把所有的列表内容都遍历了出来,然后右侧的内容挂载到了左侧的标题标签中,是通过data自定义参数挂载的,针对每一个标题,都挂在到了itemData上:

http://img.mukewang.com/climg/5d6253b90001b28609030434.jpg

所以后面在addClick方法中,可以通过data()方法,括号里写data参数就能返回对应事先存好的内容,也就是说,addClick方法的作用就是给每一个left-item绑定单击事件,点到谁,谁会找到自己实现存好的内容,并显示出来,然后把其他的left-item的内容隐藏:

http://img.mukewang.com/climg/5d6254d60001baf607320233.jpg

建议多听两遍,然后更重要的是,要写代码,在写代码测试的过程中,很多不明白的地方通过验证就明白了。加油!

如果帮助到了你,欢迎采纳!

祝学习愉快!

0

0 学习 · 6815 问题

查看课程