当前位置: 首页 > news >正文

电子商务网站建设问题购物网站开发意义

电子商务网站建设问题,购物网站开发意义,树形菜单的网站代码,企业形象网站模板前言 「作者主页」#xff1a;雪碧有白泡泡 「个人网站」#xff1a;雪碧的个人网站 「推荐专栏」#xff1a; ★java一站式服务 ★ ★前端炫酷代码分享 ★ ★ uniapp-从构建到提升★ ★ 从0到英雄#xff0c;vue成神之路★ ★ 解决算法#xff0c;一个专栏就够了★ ★ 架…前言 「作者主页」雪碧有白泡泡 「个人网站」雪碧的个人网站 「推荐专栏」 ★java一站式服务 ★ ★前端炫酷代码分享 ★ ★ uniapp-从构建到提升★ ★ 从0到英雄vue成神之路★ ★ 解决算法一个专栏就够了★ ★ 架构咱们从0说★ ★ 数据流通的精妙之道★ 文章目录 前言认识一下inscode先看运行效果看查源码内容获取项目 代码的简单分析主体index.html 游戏逻辑和功能代码app.js游戏开始前设置游戏界面的初始化操作元素与状态的初始化 小结 认识一下inscode CSDN最新推出的Inscode服务是一个在线编程工具旨在为开发者提供一个便捷的编写、运行和分享代码的环境让开发者无需在本地搭建编程环境即可快速编写和运行代码。 Inscode支持多种编程语言包括Java、Python、C等同时也支持编写HTML、CSS和JavaScript代码。它提供了完整的运行环境让代码在网页上直接运行并输出结果即时调试方便快捷。同时Inscode还提供了分享功能可以轻松地将代码分享给其他人。 使用Inscode只需访问其网站https://inscode.csdn.net/ 个人主页why_does_it_work 先看运行效果 这里可以直接看查源码内容刷新最后一个是放大跳转网页 看查源码内容 获取项目 点击链接 极品飞车 代码的简单分析 主体index.html !DOCTYPE html html langen head meta charsetutf-8 meta nameapple-mobile-web-app-capable contentyes / meta nameHandheldFriendly contentTrue meta nameapple-touch-fullscreen contentyes / meta nameviewport contentinitial-scale1.0,maximum-scale1.01, minimal-ui / title极品飞车/title meta namekeywords contentHTML5,汽车赛道,飙车游戏 / meta namedescription contentHTML5汽车赛道飙车游戏代码下载。H5精品短跑赛车俱乐部游戏赛车游戏源代码。游戏介绍鼠标,键盘左右键控制赛车方向让我们开始赛车比赛游戏吧。兼容手机移动端横屏模式效果更好左右晃动控制方向带背景音效。 / meta nameauthor contentjs代码 / meta namecopyright contentjs代码 / stylebody {margin: 0px;padding: 0px;width: 100%;background-color:black;} canvas { -ms-touch-action: none;image-rendering: -o-crisp-edges; image-rendering: optimize-contrast; -ms-interpolation-mode: nearest-neighbor; -webkit-tap-highlight-color: rgba(0,0,0,0);-moz-tap-highlight-color: rgba(0,0,0,0);tap-highlight-color: rgba(0,0,0,0);user-select: none;-webkit-touch-callout: none;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;} /style script srcviewporter.js/script /head body div idviewporter canvas idcanvas moz-opaque/canvas /div /body script srcTweenMax.min.js/script script srchowler.js/script script srcapp.js/script /html!DOCTYPE html这是HTML文档的文档类型声明指定文档遵循的HTML版本。 html langen开始HTML标记lang属性指定了页面使用的语言为英语。 head头部标签用于包含关于文档的元数据和引用外部资源。 meta charsetutf-8设置字符编码为UTF-8确保页面可以正确显示非英文字符。 meta nameapple-mobile-web-app-capable contentyes /用于将网页添加到iOS设备的主屏幕并使其在全屏模式下运行。 meta nameHandheldFriendly contentTrue告诉浏览器此页面适合在手持设备上查看。 meta nameapple-touch-fullscreen contentyes /指定页面在苹果设备上以全屏模式显示。 meta nameviewport contentinitial-scale1.0,maximum-scale1.01, minimal-ui /设置视口的初始缩放级别和最大缩放级别并启用iOS的Minimal UI模式。 titleHTML5汽车赛道飙车游戏/title设置页面的标题将显示在浏览器的标题栏或选项卡上。 meta namekeywords contentHTML5,汽车赛道,飙车游戏 /提供与页面相关的关键词有助于搜索引擎理解页面内容。 meta namedescription contentHTML5汽车赛道飙车游戏代码下载。H5精品短跑赛车俱乐部游戏赛车游戏源代码。游戏介绍鼠标,键盘左右键控制赛车方向让我们开始赛车比赛游戏吧。兼容手机移动端横屏模式效果更好左右晃动控制方向带背景音效。 /提供页面的描述用于搜索引擎展示结果和页面摘要。 meta nameauthor contentjs代码 / meta namecopyright contentjs代码(www.jsdaima.com) /声明页面的版权信息。 style开始CSS样式块用于定义页面的样式。 body 和 canvas 的样式设置页面的背景颜色和画布样式。 script srcviewporter.js/script引入名为 “viewporter.js” 的外部JavaScript文件。 body页面的主体部分。 div idviewporter一个带有 “viewporter” id 的div元素。 canvas idcanvas moz-opaque/canvas一个带有 “canvas” id 的canvas元素用于绘制游戏界面。 /body页面主体部分的结束标签。 script srcTweenMax.min.js/script引入名为 “TweenMax.min.js” 的外部JavaScript文件该文件可能包含一些动画效果的库或框架。 script srchowler.js/script引入名为 “howler.js” 的外部JavaScript文件该文件可能包含用于处理背景音效的库或框架。 script srcapp.js/script引入名为 “app.js” 的外部JavaScript文件该文件包含实际的游戏逻辑和功能代码。 /htmlHTML标记的结束标签。 游戏逻辑和功能代码app.js 游戏开始前设置 function initSplash() {gameState splash,resizeCanvas(),1 ! audioType || muted || music.play(),initStartScreen() }gameState splash这行代码将gameState变量的值设置为字符串splash表示游戏状态为“闪屏”splash。 resizeCanvas()这个函数调整画布的大小可能是根据窗口大小或其他参数进行调整。 1 ! audioType || muted || music.play()这行代码检查条件。如果audioType不等于1可能意味着选择了某种音频类型或者muted静音为假那么它将执行music.play()即播放音乐。 initStartScreen()这个函数用来初始化开始界面可能是创建开始按钮、加载资源等等。 所以initSplash函数的作用是在游戏开始时设置游戏状态为“闪屏”调整画布大小根据条件播放音乐并初始化开始界面。 游戏界面的初始化操作 function initStartScreen() {gameState start,userInput.removeHitArea(moreGames),1 audioType (musicTween musicTween.kill(), musicTween TweenLite.to(music, 1, {volume: .2,ease: Linear.easeNone})),background new Elements.Background(assetLib.getData(mainBackground), canvas.width, canvas.height),userInput.addHitArea(mute, butEventHandler, null, rect, {aRect: [644, 0, canvas.width, 54]},!0);var a {oImgData: assetLib.getData(uiButs),aPos: [620, 340],id: play},b {oImgData: assetLib.getData(uiButs),aPos: [98, 359],id: credits};userInput.addHitArea(showMapScreen, butEventHandler, null, image, a),userInput.addHitArea(credits, butEventHandler, null, image, b);var c new Array(a, b);panel new Elements.Panel(assetLib.getData(panels), assetLib.getData(uiElements), assetLib.getData(position), assetLib.getData(numbers), gameState, c, canvas.width, canvas.height),panel.startTween1(),previousTime (new Date).getTime(),updateStartScreenEvent() } function initCreditsScreen() {gameState credits;var a {oImgData: assetLib.getData(uiButs),aPos: [61, 359],id: back};userInput.addHitArea(backFromCredits, butEventHandler, null, image, a);var b new Array(a);panel new Elements.Panel(assetLib.getData(panels), assetLib.getData(uiElements), assetLib.getData(position), assetLib.getData(numbers), gameState, b, canvas.width, canvas.height),panel.startTween2(),previousTime (new Date).getTime(),updateCreditsScreenEvent() } function initMapScreen() {gameState map,background new Elements.Background(assetLib.getData(mainBackground), canvas.width, canvas.height);var a {oImgData: assetLib.getData(uiButs),aPos: [620, 340],id: play},b {oImgData: assetLib.getData(uiButs),aPos: [61, 359],id: back},c {oImgData: assetLib.getData(uiButs),aPos: [165, 359],id: resetScores};userInput.addHitArea(startGame, butEventHandler, null, image, a),userInput.addHitArea(backFromMap, butEventHandler, null, image, b),userInput.addHitArea(resetScores, butEventHandler, null, image, c);var d new Array(a, b, c),e aMapPointData[8][0],f aMapPointData[8][1];totalScore 0,levelTheme desert,levelNum 8;for (var g 0; g aMapPointData.length; g) if (2 saveDataHandler.aLevelStore[3 * g]) {var h {oImgData: assetLib.getData(uiElements),aPos: aMapPointData[g],id: completedLevel,noFloat: !0};userInput.addHitArea(selectLevel, butEventHandler, {id: g},image, h),d.push(h),totalScore saveDataHandler.aLevelStore[3 * g 2]} else if (1 saveDataHandler.aLevelStore[3 * g]) {levelTheme city,3 g ? levelTheme forest: g 5 (levelTheme desert);var h {oImgData: assetLib.getData(uiElements),aPos: aMapPointData[g],id: levelTheme,noFloat: !0};userInput.addHitArea(selectLevel, butEventHandler, {id: g},image, h),d.push(h),e aMapPointData[g][0],f aMapPointData[g][1],levelNum g,g 1 (firstPlay !1)}for (var g 0; g aPowerUpBarData.length; g) aPowerUpBarData[g] saveDataHandler.aLevelStore[27 g];winnings saveDataHandler.aLevelStore[31],panel new Elements.Panel(assetLib.getData(panels), assetLib.getData(uiElements), assetLib.getData(position), assetLib.getData(numbers), gameState, d, canvas.width, canvas.height),panel.highlight.x e,panel.highlight.y f,panel.oScoreData.totalScore totalScore,panel.startTween1(),previousTime (new Date).getTime(),updateMapEvent() }首先它初始化了一个变量gameState并将其设置为start。然后它移除了名为moreGames的用户输入区域。 接下来它检查变量audioType是否为1。如果是它会创建一个TweenLite动画将音乐的音量渐变到0.2。这里使用了TweenLite库来处理动画效果。 然后它创建了一个背景对象并传入一个名为mainBackground的数据资源以及画布的宽度和高度。 之后它添加了一个名为mute的用户输入区域该区域的位置和形状是一个矩形具体位置是(644, 0)尺寸与画布相同。在用户点击该区域时会调用butEventHandler函数。 接下来它创建了两个对象a和b分别包含了一些图像数据和位置信息。这些对象表示游戏界面上的两个按钮一个是play按钮另一个是credits按钮。 然后它通过调用userInput.addHitArea()方法添加了两个用户输入区域一个是showMapScreen当用户点击a所表示的图像区域时会调用butEventHandler函数另一个是credits当用户点击b所表示的图像区域时同样会调用butEventHandler函数。 接下来它创建了一个数组c包含了刚才创建的两个按钮对象a和b。 然后它创建了一个面板对象并传入一些数据资源以及游戏状态、按钮数组和画布的宽度和高度。这里使用了Elements.Panel类来创建面板对象。 之后它调用面板对象的startTween1()方法开始一个动画效果。 最后它记录了一个时间戳到变量previousTime中并调用updateStartScreenEvent()函数来更新开始界面的事件处理。 initCreditsScreen()函数 将游戏状态设置为credits。创建一个名为a的对象该对象包含一些图像数据、位置信息和标识符。使用userInput.addHitArea()方法将点击区域添加到用户输入处理器中该区域与图像a相关联并且在触发时调用butEventHandler事件处理程序。创建一个名为b的数组并将对象a添加到数组中。创建一个Panel对象该对象使用提供的数据初始化并设置其宽度和高度为画布的宽度和高度。调用panel.startTween2()方法开始面板的动画效果。设置previousTime变量为当前时间。调用updateCreditsScreenEvent()函数更新信用屏幕事件。 initMapScreen()函数 将游戏状态设置为map。创建一个Background对象该对象使用提供的背景图像数据和画布的宽度和高度进行初始化。创建三个对象a、b和c它们分别包含不同的图像数据、位置信息和标识符。使用userInput.addHitArea()方法将点击区域添加到用户输入处理器中每个区域与相应的图像相关联并在触发时调用butEventHandler事件处理程序。创建一个名为d的数组并将对象a、b和c添加到数组中。根据特定条件设置一些变量比如e和f的值根据aMapPointData数组中的索引进行设置totalScore、levelTheme和levelNum的值根据saveDataHandler.aLevelStore数组中的值进行计算。循环遍历aMapPointData数组并根据条件向用户输入处理器中添加点击区域并将相应的对象添加到数组d中。根据saveDataHandler.aLevelStore数组中的值设置一些变量。创建一个Panel对象该对象使用提供的数据初始化并设置其宽度和高度为画布的宽度和高度。设置面板的高亮位置。设置面板的总得分。调用panel.startTween1()方法开始面板的动画效果。设置previousTime变量为当前时间。调用updateMapEvent()函数更新地图事件。 元素与状态的初始化 function initGame() {gameState game,1 audioType (musicTween.kill(), musicTween TweenLite.to(music, 1, {volume: .5,ease: Linear.easeNone})),userInput.addHitArea(pause, butEventHandler, null, rect, {aRect: [587, 0, 635, 54]},!0),userInput.addHitArea(steerLeft, butEventHandler, {multiTouch: !0},rect, {aRect: [0, 60, canvas.width / 2, canvas.height]},!0),userInput.addHitArea(steerRight, butEventHandler, {multiTouch: !0},rect, {aRect: [canvas.width / 2, 60, canvas.width, canvas.height]},!0),userInput.addKey(steerRight, butEventHandler, null, 39),userInput.addKey(steerLeft, butEventHandler, null, 37),road new Elements.Road(assetLib.getData(levelTheme Skyline), assetLib.getData(levelTheme Fog), assetLib.getData(levelTheme Road), assetLib.getData(levelTheme Ground), levelTheme, levelNum, canvas.width, canvas.height, roadCallback),hud new Elements.Hud(assetLib.getData(hud), assetLib.getData(uiElements), assetLib.getData(position), canvas.width, canvas.height),userCar new Elements.UserCar(assetLib.getData(userCar), canvas.width, canvas.height),enemySpeed 390 7.2 * levelNum,raceLength 4e4 1e3 * levelNum,maxSpeed 475 6.75 * aPowerUpBarData[1],accRate 4 - .32 * aPowerUpBarData[2],turnRate 1.8 .375 * aPowerUpBarData[0],nitroLength 3 .6 * aPowerUpBarData[3],speed 200,steerX 0,rightSteer 0,leftSteer 0,curveAmount 0,hillAmount 0,tweenScaleTimer 0,levelScore 0,raceProgress 0,leadProgress raceLength * leadHeadStart,racePos 19,carReleasedNum 19,carReleaseDelay 0,speedDifferencial 0,overtakenInc 1,bridgeDistanceTarg raceLength / 4,startTimer 0,endSoundPlayed !1,offRoad !1,startStage 0,justSkid !1,nitroMode !1,curveTween TweenMax.to(this, 10, {curveAmount: 0,ease: Cubic.easeInOut,onComplete: setNewCurve,onCompleteParams: [this]}),hillTween TweenMax.to(this, 2 * Math.random() 2, {hillAmount: -.5,ease: Quad.easeInOut,onComplete: setNewHill,onCompleteParams: [this]}),previousTime (new Date).getTime(),updateGameEvent() }gameState game将游戏状态设置为game。 audioType为1时执行以下操作 musicTween.kill()停止之前正在进行的音乐渐变动画。musicTween TweenLite.to(music, 1, { volume: .5, ease: Linear.easeNone })创建一个音乐渐变动画将音乐的音量从当前值渐变为0.5动画时长为1秒。 userInput.addHitArea(pause, butEventHandler, null, rect, { aRect: [587, 0, 635, 54] }, !0)添加一个点击区域用于处理暂停按钮的触发事件。点击区域的位置和大小由矩形的左上角和右下角坐标确定。 userInput.addHitArea(steerLeft, butEventHandler, { multiTouch: !0 }, rect, { aRect: [0, 60, canvas.width / 2, canvas.height] }, !0)添加一个点击区域用于处理向左转弯按钮的触发事件。点击区域的位置和大小由矩形的左上角和右下角坐标确定。允许多点触控。 userInput.addHitArea(steerRight, butEventHandler, { multiTouch: !0 }, rect, { aRect: [canvas.width / 2, 60, canvas.width, canvas.height] }, !0)添加一个点击区域用于处理向右转弯按钮的触发事件。点击区域的位置和大小由矩形的左上角和右下角坐标确定。允许多点触控。 userInput.addKey(steerRight, butEventHandler, null, 39)将按键steerRight与事件处理函数关联当按下键盘上的右箭头键(键码为39)时触发。 userInput.addKey(steerLeft, butEventHandler, null, 37)将按键steerLeft与事件处理函数关联当按下键盘上的左箭头键(键码为37)时触发。 创建road对象使用来自assetLib的道路相关数据创建一个名为road的Elements.Road实例。 创建hud对象使用来自assetLib的HUD相关数据创建一个名为hud的Elements.Hud实例。 创建userCar对象使用来自assetLib的用户汽车相关数据创建一个名为userCar的Elements.UserCar实例。 设置一些游戏参数 enemySpeed敌方汽车的速度。raceLength比赛的长度。maxSpeed最大速度。accRate加速度。turnRate转弯速度。nitroLength氮气持续时间。speed、steerX、rightSteer、leftSteer、curveAmount、hillAmount、tweenScaleTimer等参数都被初始化为0或默认值。 初始化游戏状态和计分 levelScore关卡得分初始值为0。raceProgress比赛进度初始值为0。leadProgress领先者的进度根据领先者头部开始的距离计算。racePos玩家在比赛中的位置初始值为19。carReleasedNum已释放的汽车数量初始值为19。carReleaseDelay释放汽车的延迟时间初始值为0。speedDifferencial速度差异。overtakenInc超越增量。bridgeDistanceTarg目标桥梁距离。startTimer开始计时器初始值为0。endSoundPlayed结束音效是否已播放的标志初始值为false。offRoad是否偏离道路的标志初始值为false。startStage开始阶段初始值为0。justSkid是否刚刚打滑的标志初始值为false。nitroMode是否处于氮气模式的标志初始值为false。 创建曲线和坡度的渐变动画 curveTween将this对象的curveAmount属性渐变为0动画时长为10秒缓动函数为Cubic.easeInOut。动画完成后调用setNewCurve函数并传递this作为参数。hillTween将this对象的hillAmount属性渐变为-0.5动画时长为2~4秒之间的随机值缓动函数为Quad.easeInOut。动画完成后调用setNewHill函数并传递this作为参数。 设置previousTime为当前时间的毫秒数。 调用updateGameEvent()函数开始更新游戏状态。 小结 以下是使用HTML实现赛车游戏的简要小结 创建HTML结构使用HTML标记创建游戏画布、分数显示区域、控制按钮等元素。 CSS样式设计使用CSS样式表为游戏元素设置合适的外观和布局包括背景颜色、字体样式、按钮样式等。 JavaScript交互逻辑 处理游戏初始化在页面加载完成后通过JavaScript代码初始化游戏状态和参数设置游戏元素的初始位置和属性。监听用户输入使用JavaScript代码监听玩家的按键操作或鼠标点击事件并根据用户的输入来控制赛车的移动、转向等行为。游戏循环更新使用JavaScript的定时器函数如setInterval或requestAnimationFrame来实现游戏的循环更新包括更新赛车位置、检测碰撞、计算得分等操作。显示分数和游戏信息根据游戏状态和数据使用JavaScript代码实时更新游戏界面上的得分、倒计时或其他相关信息。 动态效果和动画使用JavaScript和CSS技术实现一些动态效果和动画如赛车移动的平滑过渡、爆炸效果、道路随机生成等。 游戏结束和重置根据游戏规则或条件判断游戏是否结束并展示游戏结束画面或弹窗。提供重置游戏的功能以便玩家可以重新开始游戏。 响应式设计考虑使用响应式布局或媒体查询等技术使游戏在不同屏幕尺寸和设备上都能有良好的显示效果和操作体验。
http://www.pierceye.com/news/347470/

相关文章:

  • 中国现代公路建设有限公司网站网站建设技巧饣金手指排名27
  • 食品网站开发的背景阿里云oss建站 直接上传wordpress
  • 石泉政协网站建设方案网络广告推广服务
  • 怎么用lamp做网站桂林网
  • 织梦网站专题页面如何做网站排名优化提升快速
  • 公司建设网站费用吗qq官方网站登录入口
  • 怎么用自己的服务器做网站国外酷炫网站有哪些
  • 音乐网站建设规划国内最近新闻
  • 东莞骄阳网站建设wordpress 安装出现 过多重定向
  • 学校网站建设开题报告站长工具域名备案查询
  • 网站商城微信支付宝支付宝支付接口网站 空间地址是什么
  • 公司网站功能模块弹出全屏视频网站怎么做
  • 网站实现搜索功能网站建设时间规划
  • 产品单页营销型网站模板下载codex.wordpress.org
  • 河南省和城乡建设厅网站网站备案添加域名
  • 网站建设公司地址在哪济南网站建站公司
  • 图片瀑布流网站模板哪里有html5网站建设
  • 做韩国网站可以做推广的网站有哪些
  • 阳泉哪里做网站传统企业如何做好网络推广
  • 做网站不赚钱潍坊制作网站的公司
  • 网站城市切换代码手机微信官方网站
  • 福州建设招聘信息网站动漫设计专业哪个学校比较好
  • 网站建设需要哪些准备wordpress调用单页面跳转
  • 小公司使用的网站开发电子商务毕业设计 网站建设
  • 简单的个人网站模板网站建设费记什么科目
  • 中国建设银行宁波分行网站一般网站空间要多大
  • 做简单视频网站自己看廊坊专门做网站
  • 做贸易网站科技型中小企业服务平台登录
  • 网站怎么接广告赚钱net创建网站之后怎么做
  • 做网站如何让盈利wordpress链接样式表