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开发, 即可持续更新中~。

相关推荐
小毛驴850几秒前
Vue 路由示例
前端·javascript·vue.js
发现一只大呆瓜27 分钟前
AI流式交互:SSE与WebSocket技术选型
前端·javascript·面试
m0_719084111 小时前
React笔记张天禹
前端·笔记·react.js
Ziky学习记录2 小时前
从零到实战:React Router 学习与总结
前端·学习·react.js
wuhen_n2 小时前
JavaScript链表与双向链表实现:理解数组与链表的差异
前端·javascript
wuhen_n2 小时前
JavaScript数据结构深度解析:栈、队列与树的实现与应用
前端·javascript
狗哥哥2 小时前
微前端路由设计方案 & 子应用管理保活
前端·架构
前端大卫3 小时前
Vue3 + Element-Plus 自定义虚拟表格滚动实现方案【附源码】
前端
却尘3 小时前
Next.js 请求最佳实践 - vercel 2026一月发布指南
前端·react.js·next.js
ccnocare3 小时前
浅浅看一下设计模式
前端