发表于: 2017-04-26 21:15:59

1 947


完成的事情:

debug and first demo and second debug



计划的事情:

二次demo,补基础



问题:

之前留下了那个上下方向轮播的坑这一天还是要搞的。

听啊超说过有个属性控制这个的,然后就点这那个属性查看的东西一个一个去瞄,瞄到了translate、transform这样的我不认识的css属性,百度导航到w3school中查看transform语法结构,作为一个可以对元素进行旋转、缩放、移动或倾斜的属性,其中translate3d(x,y,z)属性定义转换方向。

bootstrap中.carousel-inner > .item.next,.carousel-inner > .item.active.right和.carousel-inner > .item.prev,.carousel-inner >.item.active.left设置的是(100%, 0, 0)和(-100%, 0, 0),很明显,是在x轴方向的移动,故复制粘贴一套下来,并修改成(0, 100%, 0)和(0, -100%, 0)。

发现移动方向是改了,但是变成了好奇怪切换,然后到网上抄了一段下来,发现还得对transition属性进行设置,整体代码如下:

.carousel-inner > .item {

    -webkit-transition: -webkit-transform .6s ease-in-out;

    -o-transition: -o-transform .6s ease-in-out;

    transition: transform .6s ease-in-out;

    -webkit-backface-visibility: hidden;

    backface-visibility: hidden;

    -webkit-perspective: 1000px;

    perspective: 1000px;

}

.carousel-inner > .item.next,

.carousel-inner > .item.active.right {

    left: 0;

    -webkit-transform: translate3d(0, 100%, 0);

    transform: translate3d(0, 100%, 0);

}

.carousel-inner > .item.prev,

.carousel-inner > .item.active.left {

    left: 0;

    -webkit-transform: translate3d(0, -100%, 0);

    transform: translate3d(0, -100%, 0);

}

.carousel-inner > .item.next.left,

.carousel-inner > .item.prev.right,

.carousel-inner > .item.active {

    left: 0;

    -webkit-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

}


二次debug部分:

后台的职位编辑/新增的标签部分,先从公司信息接口获取该公司的所有标签,放到一个scope变量中(scope.tagList),然后弄一个跟scope.tagList同长度的数组,并全部赋予false,作为标签的checkbox绑定数据(scope.tagState)。

scope.tagList = res.data.tagList;

for(var i in scope.tagList){

    scope.tagState[i] = false;

}

获取职位的标签组,判断当某职位标签在公司标签的位置,并把scope.tagState对应位置数据改成true。

scope.jobSaveData.tags = res.data.tags;

for(var i in scope.tagList){

    for(var j in scope.jobSaveData.tags){

        if(scope.tagList[i].tag == scope.jobSaveData.tags[j].tag){

            scope.tagState[i] = true;

        }

    }

}

最后在数据请求前,对checkbox的绑定数据scope.tagState进行处理,scope.tagState哪个位置是true,就在公司标签的对应位置把那东东提取出来,放到请求数据的tags中:

 $scope.jobSaveData.tags = [];

for(var i in $scope.tagState){

    if($scope.tagState[i]){

        console.log($scope.tagList[i]);

        $scope.jobSaveData.tags.push($scope.tagList[i]);

    }

}

功能完成。



收获:

css3部分内容,轮播图相关。



返回列表 返回列表
评论

    分享到