HTML 基础,尚优选网站设计开发(二)

最近在恶补HTML相关知识点,本人是后端程序员,看到周围很多人都被裁员了,突然想尽早转变成全栈程序员变成独立开发者,有空余接接私单、商单的

尚优选网站设计开发,HTML+CSS+JavaScript实际使用

尚优选网站设计开发

页面分析

less的使用

页面交互功能实现

  • 选项卡的点击切换
  • 价格动态切换
  • 商品信息动态加载
  • 点击商品参数添加效果
  • 点击侧边栏关闭开启效果
  • 商品动态加入效果
  • 公用函数封装
  • 放大镜效果

部分代码

javascript 复制代码
/* 
	 *
	 *1、找到smallPic元素  
	 *2、鼠标移入事件,创建蒙版,创建大图
	 *3、移除鼠标时,销毁大图层
	 */
	function bigClassMove() {
		var smallPic = document.querySelector(
			'#wrapper #content .contentMain #center #center-left .leftTop .smallPic');
		var leftTop = document.querySelector('#wrapper #content .contentMain #center #center-left .leftTop');

		var imgList = goodData.imagessrc;

		smallPic.onmouseenter = function() {
			var maskDiv = document.createElement('div');
			maskDiv.className = 'mask';

			var bigDiv = document.createElement('div');
			bigDiv.className = 'bigPic';

			var bigImg = document.createElement('img');
			bigImg.src = imgList[bigImgIndex].b;
			bigDiv.appendChild(bigImg);


			leftTop.appendChild(bigDiv);
			smallPic.appendChild(maskDiv);


			smallPic.onmousemove = function(even) {
				var left = even.clientX - smallPic.getBoundingClientRect().left - maskDiv.offsetWidth / 2;
				var top = even.clientY - smallPic.getBoundingClientRect().top - maskDiv.offsetHeight / 2;

				if (left < 0) {
					left = 0;
				} else if (left > smallPic.clientWidth - maskDiv.offsetWidth) {
					left = smallPic.clientWidth - maskDiv.offsetWidth;
				}


				if (top < 0) {
					top = 0;
				} else if (top > smallPic.clientHeight - maskDiv.offsetHeight) {
					top = smallPic.clientHeight - maskDiv.offsetHeight
				}


				maskDiv.style.left = left + 'px';
				maskDiv.style.top = top + 'px';

				var scale = (smallPic.clientWidth - maskDiv.offsetWidth) / (bigImg.offsetWidth - bigDiv
					.clientWidth)
				bigImg.style.left = -left / scale + 'px';
				bigImg.style.top = -top / scale + 'px';
			}

			smallPic.onmouseleave = function() {
				smallPic.removeChild(maskDiv);
				leftTop.removeChild(bigDiv);
			}
		}


	}

演示效果

商城demo

需要代码工程的同学 ,工程已经打包好了↓↓↓↓

扫描下方QCode,或者关注GZH: 码猿趣事,回复关键字:shopping开发, 即可持续更新中~。

相关推荐
爬山算法几秒前
Redis(110)Redis的发布订阅机制如何使用?
前端·redis·bootstrap
REDcker14 分钟前
前端打包工具 - Rollup 打包工具笔记
前端·笔记
前端大卫16 分钟前
动态监听DOM元素高度变化
前端·javascript
前端大卫31 分钟前
Webpack 老项目的优化实践
前端
开利网络38 分钟前
合规底线:健康产品营销的红线与避坑指南
大数据·前端·人工智能·云计算·1024程序员节
yinuo1 小时前
纯CSS&JS实现:丝滑渐变过渡的动态导航栏
前端
qq. 28040339841 小时前
vue介绍
前端·javascript·vue.js
未来之窗软件服务1 小时前
未来之窗昭和仙君(五十五)标签票据打印模板设计器——东方仙盟筑基期
前端·打印设计器·仙盟创梦ide·东方仙盟·昭和仙君·东方仙盟架构
Mr.Jessy1 小时前
Web APIs 学习第五天:日期对象与DOM节点
开发语言·前端·javascript·学习·html
前端大卫1 小时前
如何统一前端项目的 Node 版本和包管理器?
前端