这个题很简单的,就是用一个按钮切换二个菜单的显示和隐藏。比昨晚的查找重复字符串要简单的多。...参与写作业的同学们基本都写的不错,思路也都OK,用原生JS,jQuery,ES6都可以,, 暴露出来的问题主要有二个, 一是DOM查找的效率问题,这个大家自己其实都懂,我就提一下不多说了哈,, 二是判断条件的选择...,就是用什么来做为if的判断条件,我个人觉得以下这种用字符串来判断,应该是不太OK的。。...我也确实是没测试,按说应该是可以运行,, 反正,我不太推荐这么写。 OK,今天的作业很简单,就说这么多了。
用js实现一个弹出图层,具体效果: 点击按钮后弹出图层,图层处于页面中间、带有阴影的圆角边框、图层中有input、提交按钮、关闭按钮、标题,弹出后背景页面不可点击、背景变灰。...以下是一个简单的JavaScript代码示例: 提交 div class="close" id="close-popup">×div> div> div> <script...overlay.style.display = "none"; document.body.style.overflow = "auto"; } 该代码使用了CSS样式...如果想隐藏JS功能逻辑,可用JShaman对JS代码进行混淆加密,加密后的代码是密文状态,不可读、不可分析。
viewport" content="width=device-width, initial-scale=1.0"> Document div..."input2"> 确定 重置 div...id="box"> 12345677890 div> var box=document.getElementById('box
这是前端开发中普遍存在的怪圈:业务开发人员在写样式上花费的时间,往往超过了编写核心业务逻辑的时间。写样式坑多、钱少,一般人根本写不好。...有的人用px,有的人用rem,有的人随手写!important。最终导致样式代码库变得混乱不堪,难以维护。绝大多数业务开发者并不擅长精细调样式,也不应该把大量精力放在写 CSS 上。...业务层少写甚至不写样式,优先使用架构层封装好的能力,不但能减少开发工作量,还能提升样式质量,保持全站风格统一,后期维护也更简单,改一处即可全局生效。...下面这套样式体系,就是让业务 “少写、不写样式” 的核心支撑。公共组件库架构层应当为业务开发人员提供公共组件库。...不写样式代码,不是偷懒,而是更高级的工程化思路。
居然可以用 js 写 PPT 用powerpoint或者keynote写演示文稿,对于代码、数学公式等的支持一直是个痛点。而且对于前端同学来说,一身的css功力用不上也是个痛点。...> div> div> js"> js">...> div> div> 支持markdown reveal.js的第一个强大功能是直接可以使用markdown来写演示文稿。...: 代码高亮 代码高亮默认是支持的,我们可以在markdown里面用```来使用: 显示出来的效果如下: md-code 也可以直接使用html的pre和code标签来显示: ...更进一步 除了上面介绍的基本特性之外,reveal.js支持自动播放、自制插件、支持处理事件等等有利于开发人员写slides的特性。相信能给你的slides带来新的好玩的东西,将汇报与分享变成乐趣。
ES6 提供的许多新特性。...用这些新特性,我们能在不降低代码可读性与维护性的基础上畅快地写 JavaScript~ 箭头函数 将数组的内容 * 2 以前我们这么写 [1, 2, 3].map(function(each){...return each * 2; }); 用 ES6 只需这样写 [1, 2, 3].map(each=> each * 2); // 或 [1, 2, 3].map((each)=> each * 2...){ name = name || 'Jack'; } 用 ES6 只需这样写 var introSomeBody = (name = 'Jack') => { } 不定参数 数字求和 以前我们这么写...; }, 0); } 解构(Destructuring)赋值 交换两个变量的值 以前我们这么写 var temp = a; a = b; b = a; 用 ES6 只需这样写 [a, b] =
最近项目中有一接口返回的一个字段是html格式的字符串,里边每个div中style的高度是固定的px,然后再手机端显示的时候发现,div中的内容重叠了;效果图如下: ? 对应的div如下: ?...由于高度固定,一行内容显示不完的情况下,内容换行的时候就出现重叠; 现在一种解决方案就是将height样式调整为height:auto; 下边使用正则表达式将所有div中的height样式进行调整,代码如下...; BingChengJLNR = Regex.Replace(BingChengJLNR, "(div[^>]+height:)([0-9]+px)([^>]+>)", "$1auto$3") 之后就能正常显示了...这里调整的是height,其他style样式原理一样的
前言 在这篇文章中,我们将通过 JS 构建我们自己的 JS 解释器,用 JS 写 JS,这听起来很奇怪,尽管如此,这样做我们将更熟悉 JS,也可以学习 JS 引擎是如何工作的!...一个完全使用 javascript 实现的,小型且快速的 javascript 解析器 本次实践我们将使用 acorn.js ,它会帮我们进行词法分析,语法解析并转换为抽象语法树。...Webpack/Rollup/Babel(@babel/parser) 等第三方库也是使用 acorn.js 作为自己 Parser 的基础库。(站在巨人的肩膀上啊!)...acorn.js parse 返回值符合 ESTree spec 描述的 AST 对象,这里我们使用@types/estree 做类型定义。...: Expression | null; } Identifier 顾名思义,标识符节点,我们写 JS 时定义的变量名,函数名,属性名,都归为标识符。
用原生js写一个"多动症"的简历 预览地址 源码地址 最近在知乎上看到@方应杭用vue写了一个会动的简历,觉得挺好玩的,研究一下其实现思路,决定试试用原生js来实现。...使用es6的写法 使用部分原生dom操作api standard.js(代码风格约束利器) 目录结构如下 最重要的几个模块分别是resumeEditor(简历编辑模块) 、 stylesEditor(...简历样式编辑模块) 、 以及vQuery(封装的dom操作模块) 最后app.js(入口模块)再将几个模块的功能结合起来完成整个项目。...(简历样式编辑模块) 简历所展现的布局效果都是由这个模块完成的,核心方法是showStyles。...markdownToHtmlWrap) .then(showStylesWrap.bind(null, 2)) 可以看到,代码清爽了很多,纵向发展,应用第一步第二步第三步...一眼就能够看出来,当然实现的逻辑是将原来的相关的模块用
用原生js写一个"多动症"的简历 预览地址 源码地址 最近在知乎上看到@方应杭用vue写了一个会动的简历,觉得挺好玩的,研究一下其实现思路,决定试试用原生js来实现。...使用es6的写法 使用部分原生dom操作api standard.js(代码风格约束利器) 最重要的几个模块分别是resumeEditor(简历编辑模块) 、 stylesEditor(简历样式编辑模块...) 、 以及vQuery(封装的dom操作模块) 最后app.js(入口模块)再将几个模块的功能结合起来完成整个项目。...(简历样式编辑模块) 简历所展现的布局效果都是由这个模块完成的,核心方法是showStyles。...markdownToHtmlWrap) .then(showStylesWrap.bind(null, 2)) 可以看到,代码清爽了很多,纵向发展,应用第一步第二步第三步...一眼就能够看出来,当然实现的逻辑是将原来的相关的模块用
js异步的5种样式 1.定时器 2.AJAX 3.Promise 4.Generator 5.asyns和await 1.定时器 setTimeout() : 延时器 可以传入三个分别是 1)code...1)有两个参数分别是resolve(成功)和regect(失败),resolve表示成功的状态,regect表示未成功,两者都是由pending(进行中)产生的 代码样式: 2)then,catch,和...catch()指定发生错误时的回调函数,简单的来说,就是regect();产生失败,用catch代替。...*来表示这个函数是Genterator方法 用yield表示新的数据。...1)代码样式: 2)next();的方法 要使用Genterator方法必须使用next();进行运行,每一次使用next();就会返回一个value和done的值,value表示传入的值,当完成时value
模板引擎在前后端都能用到,但是通过作为前端,我们只需要一些简单的模板引擎。 先上代码: 模板引擎 div id="tpl" type="text/plain">...Today: { date } { user.company } div> js"> var tpl = new...这里面我们使用正则表达式去匹配字符串中的变量,当然,你要对js正则表达式熟练应用。
(adsbygoogle = window.adsbygoogle || []).push({});
2、使用yarn来处理依赖包的管理 3、使用es6的写法 4、使用部分原生dom操作api 5、standard.js(代码风格约束利器) 目录结构如下 最重要的几个模块分别是resumeEditor...(简历编辑模块) 、 stylesEditor(简历样式编辑模块) 、 以及vQuery(封装的dom操作模块) 最后app.js(入口模块)再将几个模块的功能结合起来完成整个项目。...Vquery stylesEditor(简历样式编辑模块) 简历所展现的布局效果都是由这个模块完成的,核心方法是showStyles。...stylesEditor(简历样式编辑模块) 简历编辑模块用来展示简历内容,主要会经历由markdown格式往html页面形式的转换。...我们来看一下promise分支中app模块最终的写法 可以看到,代码清爽了很多,纵向发展,应用第一步第二步第三步...一眼就能够看出来,当然实现的逻辑是将原来的相关的模块用Promise包装起来,并且在原来回调函数执行的地方
今天用CSS写一个缺角的div,大致的效果是这样的,div的左上角和右上角缺掉了一块的效果,简称为缺角div ? <!...background-repeat: no-repeat; } div...class="box">div>
用JS来动态设置CSS样式,常见的有以下几种 1. 直接设置style的属性 某些情况用这个设置 !...important,推荐用这种方法设置第三个参数 element.style.setProperty('height', '300px', 'important'); 5....改变class 比如JQ的更改class相关方法 因JS获取不到css的伪元素,所以可以通过改变伪元素父级的class来动态更改伪元素的样式 element.className = 'blue';...创建引入新的css样式文件 function addNewStyle(newStyle) { var styleElement = document.getElementById...('styles_js'); if (!
那在JS中,它到底是如何控制标签的样式?...利用className属性给标签设置样式,CSS样式没有出现在标签内,只是给标签添加类名而已; ? 3 获取/设置标签的内容 现在可以利用JS来控制标签的样式,能否利用JS控制标签的内容?...+= '这是我新添加的标签'; 4 课程小结 掌握获取标签的目的是能够利用JS选择到相应的标签,便于对其进行相应的操作; 掌握设置样式的目的是能够利用JS实现对标签样式的控制...5 课后练习 1 id名为h5Course的div标签 div class="wrap" id="h5Course">HTML5学堂div>,JS代码如下: // 注意查看id的大小写 var con...3 利用下方提供的结构代码(注意,提供的结构不能变化,但是可以用JS添加),完成下方的最终效果; 结构代码: <!
主要是HTML5 的拖放(Drag 和 Drop) 例子(不需要对div设置ID): div> div style="width: 50px;height:50px;" οndrοp="drop(event,this)" οndragοver="allowDrop(event)...div> div style="width: 50px;height:50px;" οndrοp="drop(event,this)" οndragοver="allowDrop(event)...: 当放置被拖数据时,会发生 drop 事件,这里自定义drop(event,this)函数,互换两个的innerHTML ondragover:当拖动链接等有默认事件的元素时,要在ondragover...在上面的例子中,ondragstart 属性调用了一个函数,drag(event),它规定了被拖动的数据。dataTransfer.setData() 方法设置被拖数据的数据类型和值。
Again,这个问题对于使用mvvm框架,例如vue,weex和angular 是任何难度的因为他们的dom都是直接用js生成控制的,在生成之初就直接处理好久好了。...但是对于普通的js来说,这就很麻烦了。...不过很好,JQuery已经帮我们集成了一个方法.each() 例如你想要遍历class为rffanlab的 那么你可以这么做 $(".rffanlab").each(function(){ // do...something here // $(this) 代表当时被遍历循环的元素 }) 虽然jquery是上一个时代的产物,但是不可否认他也给我们做出来非常多的贡献,让我们操作dom时不至于捉襟见肘,时常需要自己去实现
废话我也就不多说,直接上菜(由于公司电脑做了加密,无法把代码压缩发布,只能以这种方式来分享) 先来看下窗口图 图片 空白区域就是自己想展现的内容 再来看看动图 总共分为五块 1.窗口 ...InitializeComponent(); this.DataContext = new MainWindowController(this); } } } Copy 2.样式... 2.1按钮样式【隐藏、放大、关闭】 /// 判断命令是否能够执行的方法 public Command(Action...,保持为空就是事件的参数 /// public object CommandParateter { get