项目作业 1685
等367人参与

小伙伴们,我们刚走过了js的进阶阶段,也熟悉了函数与变量,接下来让我们运用所学知识来完成一个购物车的功能吧!

效果图如下:http://img1.sycdn.imooc.com/climg//5912db660001ab4d05000206.jpg

演示视频
作业描述

一、语言和环境:

        1、实现语言     HTML5、CSS3、JavaScript

        2、环境要求及开发工具   建议使用Sublime Text3 

二、网页整体要求:

        1、要求页面美观,与提供的页面效果图、结构基本保持一致,文字、背景的颜色不统一要求;

        2、要求HTML代码和CSS代码书写、命名符合规范,在代码中添加必要的注释。

        3、网页文件夹管理,图片、样式表等资料独立文件夹

三、 具体要求

        1、header区域

                所有内容在该区域内垂直居中

                (1)logo图片左侧显示,导航紧邻logo也在左侧显示

                (2)搜索框、购物车、提醒、头像按照顺序在右侧显示

                (3)导航项水平方向显示,每项之间有一定距离,且第二个导航项有默认背景颜色   默认背景颜色:#363c41

                (4)职业路径选项中右上角有标志性的小图标

                (5)搜索框内左侧为提示信息,右侧为搜索小图标,有下边框

                (6)鼠标移入导航项或右侧图标时,对应背景颜色发生变化,鼠标移出,恢复默认样式, 鼠标移入背景颜色:#363c41

        2、banner区域

                图片宽度100%铺满网页,高度固定

        3、商品结算区域

                布局描述

                (1)  结算标题由全选框、商品名称、总价、单价、数量、操作6个模块构成,每个模块中间有一定的间距

                (2)  所有商品数据呈一行一个排列。每条数据的详细信息都与结算标题相对应,选中框(及全选框)可以使用type=“checkbox”的input控件实现

                (3)结算栏由总金额和结算按钮构成

                功能描述

                (1)  页面刚加载进来时,为全选状态,结算栏中的应付金额为所有商品的总价之和

                (2)  单击全选按钮,为全不选状态,再次点击,为全选状态,结算栏中的应付金额要随之变化

                (3)  点击加、减按钮,对应商品输入框中的数字做每次加1或每次减1的变化

                (4)  值为1时,不能继续进行减操作,值将始终为1

                (5)  数量变化时,对应商品的总价随之变化,值为数量*单价

                (6)  还可以通过键盘直接输入数字,鼠标失去焦点时,对应商品的总价随之变化

                (7)  在所有的商品中,有一条商品处于未选中状态,全选按钮就处于未选中状态;当所有的商品都为选中状态时,全选按钮才为选中状态

                (8)  只有当该条商品为选中状态时,数量和选中状态的变化会时刻影响结算栏中的应付金额;当该条商品为未选中状态时,无论数量、总价如何变化,都不会计入应付金额中

        4、footer区域

                所有内容在该区域内垂直居中

                (1)链接和版权居左侧,且上下之间有一定的距离

                (2)登录方式小图标居右侧,水平方向排列,中间有一定的间距

                (3)鼠标移入链接文字时,颜色变化, 鼠标移出时:文字颜色:#959aa0    鼠标移入时:#fff

                (4)鼠标移入移出小图标时,背景透明度有变化;移入微信图标时,上方显示二维码图片

四、 购物车功能实现

        1、封装结算的函数。函数中要遍历取到每条商品数据的详细信息,计算每个商品的数量*单价,并将值写入该商品的总价中;判断只有该商品处于选中状态时,它的总价才能累加入总付款中,并

将总付款的值写入应付金额的位置

        2、对于商品数据的每次操作,处理之后都调用一次结算函数,完成总价和应付金额的更新


评分标准是什么?

规范【8分】

    * 网页文件夹管理清晰,图片、样式、脚本归置在独立的文件夹中。

    * 文件、id、class、变量等命名规范。

    * HTML、CSS、JavaScript代码规范及添加适量的注释。

整体效果【8分】

    * 页面整体结构规整,内容居中显示,每个区域背景色贯穿整个页面。

header区域【20分】

    *与效果图结构保持一致;

    *导航、Logo区有链接效果,鼠标经过相应导航项时,背景颜色发生变化。鼠标经过右侧图标时,背景颜色过渡变化

banner区域【3分】

    * 与效果图结构保持一致;

    * 图片高度固定,宽度100%显示

商品结算区域【45分】

    * 与效果图结构保持一致;

    * 整个商品结算区域由结算标题、商品数据、结算栏三部分构成。结算标题由全选框、商品名称、总价、单价、数量、操作6个模块构成,每个模块中间有一定的间距;

    * 所有商品呈一行一个排列。每条商品的详细信息都与结算标题相对应;

    * 结算栏由总金额和结算按钮构成;

    * 页面刚加载进来时,为全选状态,结算栏中的应付金额为所有商品的总价之和;

    * 单击全选按钮,为全不选状态,再次点击,为全选状态,结算栏中的应付金额要随之变化;

    * 点击加、减按钮,对应商品输入框中的数字做每次加1或每次减1的变化;

    * 值为1时,不能继续进行减操作,值将始终为1;数量变化时,对应商品的总价随之变化,值为数量*单价;

    * 还可以通过键盘直接输入数字,鼠标失去焦点时,对应商品的总价随之变化;在所有的商品中,有一条商品处于未选中状态,全选按钮就处于未选中状态;

    * 当所有的商品都为选中状态时,全选按钮才为选中状态;

    * 当该条商品为选中状态时,数量和选中状态的变化会时刻影响结算栏中的应付金额;

    * 当该条商品为未选中状态时,无论数量、总价如何变化,都不会计入应付金额中;

footer区域【14分】

    *与效果图结构保持一致;

    *鼠标移入文字时,文字颜色变化

    * 鼠标移入小图标时,小图标背景颜色变化;

    * 鼠标移入微信时,显示二维码


作业素材
下载素材

作业素材仅供学习与参考,请按要求完成作业

项目作业上传说明
第1步:上传你的作业压缩包
第2步:等待讲师一对一批复
第3步:查看讲师点评
上传作业

登录后查看更多作业,立即

意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师