画一个皮卡丘项目小结(3)

前言

继续总结过程中学到的新知识,这是第3部分。

一、设置上下两部分,上方展示代码,下方跟随展示效果

1 设置HTNL结构

<link rel="stylesheet" href="./css/default.css">  /*默认框架样式*/
<style id="styleTag"></style>   /*引入跟随展示效果 样式*/
......
<div class="code-wrapper">
    <pre id="code"></pre>
  </div>

<div class="preview-wrapper">
    <div class="preview">
        <div class="wrapper">
         ......
         <div class="upperLip right"></div>
        </div>
    </div>
</div>

2 框架的默认样式

*{margin: 0; padding: 0; box-sizing: border-box;}
*::after{
  box-sizing: border-box;
}
......
body{
  display: flex;
  flex-direction: column;
  height: 100vh;             /*高度占全屏*/
}
.code-wrapper{
  flex:1;
  height: 50%;               /*使code部分占高度一半*/
  padding: 10px;
}
.preview-wrapper{
  flex: 1;
  height: 50%;              /*使效果展示部分占高度一半*/
}

.preview{
  height: 100%;          /*使效果展示部分占包围框的全部高度*/
  display: flex;
  justify-content: center;        /*绝对居中*/
  align-items: center;
}
.wrapper{
  width: 100%;
  height: 165px;
  position: relative;
}

#code{
  height: 100%;         /*使展示代码部分占包围框的全部高度*/
  overflow: hidden;     /*隐藏超过的内容*/
}

二、设置JS代码

!function(){
  function writeCode(prefix,code,fn){
    let container = document.querySelector(‘#code‘) //获取元素
    let styleTag = document.querySelector(‘#styleTag‘)
    let n = 0
    let id = setInterval(() => {
      n+=1;
      container.innerHTML = code.substring(0,n)   //插入展示文本
      styleTag.innerHTML = code.substring(0,n)   //插入设置样式
      container.scrollTop = container.scrollHeight  //卷起高度
      if(n >= code.length){
        window.clearInterval(id)
        fn && fn.call()
      }
    },20)

设置 传入的展示代码

let code = `     #上引号
 .preview{
   background: #FEE433;
 }
 .nose{
   width: 0px;
   height: 0px;
   ......
`

调用函数

writeCode(‘‘, code)

四 Reference

??1 理解 let;

??2 querySelector简介;

??3 初学者必看“箭头函数”;

??4 innerHTML和value的用法与区别;

??5 详解JS中的 事件循环机制;

原文地址:https://www.cnblogs.com/ygming/p/8418011.html

时间: 2024-07-31 07:12:04

画一个皮卡丘项目小结(3)的相关文章

画一个皮卡丘项目小结(4)

前言 继续总结过程中学到的新知识,这是第4部分,也是最后一部分. 主要是实现 页面变速展示的 效果 一.创建button按钮 1 HTNL结构 <div class="action"> <button data-speed="slow">慢速</button> <!-- 自定义属性 --> <button data-speed="normal" class="active"

用css以写代码形式画一个皮卡丘

前一阵子在某个大神的github上看到他用写代码的形式来完成一个皮卡丘,于是心血来潮花了半个小时,也完成了一个作品. 这其中涉及到的知识点也不是很复杂,就主要是css定位的知识居多,然后就是边框属性如何画形状. 在线浏览网址:css画皮卡丘(友情提示:请电脑访问,由于定位属性的问题,手机显示不是很美观!) 然后就是一步步拼凑成的,怎么说呢,按照鼻子,眼睛,脸,嘴以及舌头来画的. 效果截图如下所示: 代码很简单,如下: html代码: <div id="code"> <

一个WPF小项目小结

一:缘起 在10月中旬的时候在学校BBS上看到有人有做PC桌面客户端的需求,做的是能耗的计算和评估,要算能耗,就有很多环节,最后对这些环节数据进行一些简单计算.我想要是做的话就用比较熟的wpf,就去聊了下,对方给了1张比较复杂的Excel表格(其实对方的需求并不是很清楚,最后大概10来张EXcel表格),说是要做成软件呈现的形式,也没要求数据库,反正只要有功能,界面他们也没概念,给了个98年的老软件作为参考,最后EXcel表格弄懂结构后不复杂,计算都是加减乘除.我就答应了,这个软件算起来大概花了

BZOJ 2324: [ZJOI2011]营救皮卡丘( floyd + 费用流 )

昨晚写的题...补发一下题解... 把1~N每个点拆成xi, yi 2个. 预处理i->j经过编号不超过max(i,j)的最短路(floyd) S->0(K, 0), S->xi(1, 0)(从i点继续走), 0->yi(1, distance(0->i))(从0出发), xi->yi(1, distance(i->j))(i点走向j点), yi->T(1, 0)(每个点必须经过至少一次), 然后跑最小费用最大流, 费用即为答案. 写完这道题感觉...只是会

bzoj 2324 营救皮卡丘

2324: [ZJOI2011]营救皮卡丘 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 1440  Solved: 560 Description 皮卡丘被火箭队用邪恶的计谋抢走了!这三个坏家伙还给小智留下了赤果果的挑衅!为了皮卡丘,也为了正义,小智和他的朋友们义不容辞的踏上了营救皮卡丘的道路. 火箭队一共有N个据点,据点之间存在M条双向道路.据点分别从1到N标号.小智一行K人从真新镇出发,营救被困在N号据点的皮卡丘.为了方便起见,我们将真新镇

BZOJ 2324 营救皮卡丘(最小费用最大流)

题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2324 题意:n+1个城市(0到n).初始时K个 人都在0城市.城市之间有距离.要求(1)遍历完n个城市(有一个人遍历了某个城市就算这个城市被遍历了):(2)遍历i城市前必须遍历完前i-1个城 市,并且在遍历前i-1个城市时不能经过大于等于i的城市.在满足(1)(2)的前提下使得K个人走的总距离最小. 思路:我们先看在实际情况下可以怎么走. (1)某个人遍历完某个城市后停在那里,以后不再

arm、linux、qt项目小结

QT资源文件 1.新建文件或工程 -> qt资源2.添加,资源名称(Image),选择路径,完成3,打开Image.qrc, 添加后缀,一般就是 /4.添加文件,添加图片5. 调用 (:/11.png) 转http://blog.sina.com.cn/s/blog_5c70dfc80100r257.html 在Qt中处理图片一般都要用到QImage类,但是QImage的对象不能够直接显示出来,要想能看到图片,初步发现有两种方法. 一.QImage转QPixmap,然后用QLabel::setP

【bzoj2324】[ZJOI2011]营救皮卡丘 最短路-Floyd+有上下界费用流

原文地址:http://www.cnblogs.com/GXZlegend/p/6832504.html 题目描述 皮卡丘被火箭队用邪恶的计谋抢走了!这三个坏家伙还给小智留下了赤果果的挑衅!为了皮卡丘,也为了正义,小智和他的朋友们义不容辞的踏上了营救皮卡丘的道路. 火箭队一共有N个据点,据点之间存在M条双向道路.据点分别从1到N标号.小智一行K人从真新镇出发,营救被困在N号据点的皮卡丘.为了方便起见,我们将真新镇视为0号据点,一开始K个人都在0号点. 由于火箭队的重重布防,要想摧毁K号据点,必须

BZOJ 2324: [ZJOI2011]营救皮卡丘

2324: [ZJOI2011]营救皮卡丘 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 2340  Solved: 963[Submit][Status][Discuss] Description 皮卡丘被火箭队用邪恶的计谋抢走了!这三个坏家伙还给小智留下了赤果果的挑衅!为了皮卡丘,也为了正义,小智和他的朋友们义不容辞的踏上了营救皮卡丘的道路. 火箭队一共有N个据点,据点之间存在M条双向道路.据点分别从1到N标号.小智一行K人从真新镇出发,营救