在我们之前的实例中,我们主要是用webpack来处理我们写的js代码,并且webpack会自动处理js之间相关的依赖。
相信自己搭建博客的人中有一大半都是玩代码的,所以代码高亮可以说是博客的必备功能。本文提供一个在基于Hugo的博客上使用highlight.js的代码高亮方案。
在此之前,首先要知道经常配置的 output 中有关 filename 和 chunkFilename 的区别;简单来说在 entry 定义的入口文件走的就是 filename 配置项,在入口文件内部引入的通常情况下是 chunk,走 chunkFilename 的配置
下面是对腾讯前端团队优化手Q一个页面案例的总结 优化目标页面:手Q群成员分布的页面 左面是首屏,右面是下拉后到底部 这个页面中,可以划分成四个部份:活跃群成员、男女比例、省市分布、年龄 将前三个
笔者增加Bootstrap 4 和 FontAwersome(字体图标),因为Bootsrap 4已经不再包含图标了。
当前,前后端分离大行其道,我本人之前不少项目也是纯前后端分离,但总有些场景,春前后端分离整起来比较痛苦,比如我手头这个公众号项目吧,它涉及到第三方鉴权,第三方凭证,以及微信凭证这些,都不适合放到前端去做,外加一些本身业务层面的认证授权,这些终归是放服务端处理合适一些的。另一层面原因,是不想系统所有功能全怼到一个SPA中,还是希望不同功能模块,去拆分到不同页面中的, 俗称的多页。
官方文档:https://www.webpackjs.com/guides/tree-shaking 在这里就不在写多余的废物案例了,就直接介绍一下开启环境和生产环境的使用即可,如果是在开发环境当中的话需要修改开发环境的 webpack.config.js, 也就是修改 webpack.config.dev.js, 告诉 webpack 只打包导入模块中用到的内容:
最流行的JS库和框架 主要看绿色柱和橙色柱即可,绿色 相当于 知名度,橙色 相当于 使用程度。 使用最多的库和框架: jquery,underscore,lodash,angular1,react 他
疑惑一 一、js中怎么实现hashcode值? 在java中有一种方法,就是可以获取字符串的对应的hashcode值,返回对应的整数值; 这个方法对于一些写在数据库中一些不方便存储的id值 ,那么在js中如果也需要这么一个方法可以使原生的js中没有那么怎么来实现呢? function isNull(str){ return str == null || str.value == ""; } /** * java String hashCode 的实现 * @param
jQuery一般来说还是很好用的,但有时候它也会有些问题的,比如jQuery的html()方法设置html代码,在一种情况下,ie6、ie7、ie8 下是不能设置html代码的。本文说的问题只针对ie8(包括ie8)以下的浏览器。 1.什么情况下IE6、IE7、IE8 jQuery.html("xxx")方法会设置不上html代码? 答:当被加载的的html代码里面出现以下情况,ie8(包括ie8)以下是设置不上html代码的: a) 被设置的html代码中包含引用其他js的,如:<scr
loader 的执行顺序是:从右到左、从下到上。在配置 sass 样式时,需要这么去写 loader:
注意该方法利用插件更改配置,如主题中有Google字体导致加载缓慢,请移步其他内容
在webpack中有时需要使用hash来做静态资源实现增量更新方案之一,文件名的hash值可以有三种hash生成方式,每一种都有不同应用场景,那么三者有何区别呢?
博客上有一个用mediaelement-and-player.js弄的播放器,插件默认的是每个页面都加载一次mediaelement-and-player.min.js和mediaelementplayer.min.css,两个文件都十分的庞大,加起来接近100k,虽然gzip之后只剩下20多k但是也是十分地不爽,所以我便寻思着有没有什么办法能有播放器的时候就加载它,没有播放器的时候就不加载。
一直以来,网站要追踪用户的操作和信息,都需要用到Js,但今天偶然看到有人用css来做网站用户的交互监测,而且完全可以实现针对不同用户的不同操作。
1、js配合传统css属性控制,可以使用setTimeout或者高级的requestAnimationFrame
1.gulp介绍 基于流的前端自动化构建工具,利用gulp可以提高前端开发效率,特别是在前后端分离的项目中。使用gulp能完成以下任务: 压缩html、css和js 编译less或sass等 压缩图片 启动本地静态服务器 其他 2.gulp构建 前端构建流程: 开发->分析->测试->编译->发布部署 一段简单的基于gulp的项目构建代码,gulpfile.js内容如下所示: gulp.task('default',function(){ return gulp .src(
配置详解 //使用插件html-webpack-plugin打包合并html //使用插件extract-text-webpack-plugin打包独立的css //使用UglifyJsPlugin压缩代码 var HtmlWebpackPlugin = require('html-webpack-plugin'); var ExtractTextPlugin = require('extract-text-webpack-plugin'); var webpack = require("webpack")
以前并没有做过相似的开发,我们的后台是xadmin,当时正在研究xadmin的插件,于是想着能不能用插件去做,后来发现太麻烦,而且实现起来我也没研究通,主要是添加按钮之类的没搞懂,于是就换了一种简单的方法。
webpack做的事情,仅仅是分析出各种模块的依赖关系,然后形成资源列表,最终打包生成到指定的文件中。 更多的功能需要借助loaders和plugins完成。比如说:在代码中有一张图片需要进行打包,webpack可以把图片读出来,但是不能将图片当做js代码来读,所以需要一个加载器loader来帮助我们把图片的二进制数据转变为js代码,loader的作用说白了就是将一种形式的代码通过逻辑转变成另一种形式的代码,转换后的代码webpack就能识别了。loader的功能定位是转换代码
前端工程化日益成熟今天,我们对于工具越来越深的封装。不管是从vue-cli的3.0版本起,还是umi、bigfish 等前端脚手架,对于webpack都封装在内,对于工程化无疑是高效的,但也在一定程度上让新手们者失去了从零配置一个项目的机会,所以很多时候还是希望能透过大神们的框架,研究一下底层结构。
几年前,如果有人提到用 JavaScript 编写 HTML 作为构建大型网站的一种方式,很多开发者会当这作不可理喻的想法,但是现在,使用 React、Vue 和 Angular 框架为组件开发的应用正在慢慢替代传统的 Web 开发。
Respond.js 是一个快速、轻量的 polyfill,用于为 IE6-8 以及其它不支持 CSS3 Media Queries 的浏览器提供媒体查询的 min-width 和 max-width特性,实现响应式网页设计(Responsive Web Design)。
gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器;她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成;使用她,我们不仅可以很愉快的编写代码,而且大大提高我们的工作效率。
CSS中有很多媒体查询的用法,例如设备尺寸判别,是否支持鼠标行为,是否是黑暗模式,是否是省电模式等。
本文来源于全球的5254份前端工具使用的调查报告,期望通过本文能够帮助大家更好的了解最新的前端开发工具趋势。
✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (1000套) 】 🧡 程序员有趣的告白方式:【💌HTML七夕情人节表白网页制作 (110套) 】 🌎超炫酷的Echarts大屏可视化源码:【🔰 echarts大屏展示大数据平台可视化(150套) 】 🎁 免费且实用的WEB前端学习指南: 【📂web前端零基础到高级学习视频教程 120G干货分享】 🥇 关于作者: 历任研发工程师,技
博客园中每篇文章的评论窗口最下面就带了一个Google的广告,当然我这个博客也不例外。不过这些广告我看着就不爽,于是就想办法把该死的广告去掉。使用Mathon2打开博客园中的任何一篇文章,选定Google广告和周围区域,右键“查看选定区域代码”就可以看到原来是Google的JS文件在我的页面中生成了一个Iframe,具体代码为:
本节课讲解在webpack v4中的 SCSS 提取和懒加载。值得一提的是,v4和v3在 Scss 的懒加载上的处理方法有着巨大差别:
each 方法用来遍历 jQuery 对象的,它的参数是一个事件处理函数,这个事件处理函数有两个参数,第一个参数是索引,第二个参数时索引对应的 DOM 对象,使用的时候注意转成 jQuery 对象。
之前移植emlog时就发现lightbox图片幻灯片浏览插件了,因为移植过程中出现了很大的困难,所以没有及时把教程写出来,今天抽空再研究了一下,才把这个lightbox图片幻灯片浏览插件教程写出来 如果你要使用这款插件,那么一定需要引用jquery插件库,但是jquery的版本不能太高,版本过高不能正常使用,推荐jquery.min.js-1.7.1的版本,附件中也是1.7.1的版本 其次你需要引用一个jquery.lightbox.css和一个jquery.lightbox.
现在这种设计在移动端很常见,因为宽度是稀缺的。相信不少人设计项目中有实现过这种交互,而且,我敢保证是利用JS实现的。
mask遮罩蒙层使用通常的写法的bug 通常写法pug .mask 通常写法css .mask{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 100; /*移动端*/ background: rgba(0,0,0,.5); /*ie*/ background: #000; opacity: 0.5; filter: alpha(opacity = 0.5); } 但是这种适用于内容小于屏幕高度的,如果内容撑出屏幕,那
最近接到一个项目,其中有一个小需求我觉得可以稍微沉淀一下,首先是d3.js的简单应用,还有就是swiper的调试费了一定的时间
其实,基于容器云生态体系,从本质上来讲,Helm 思想的引入,主要体现在:“关注分离”,在 DevOps 理念中,使得运维与开发职责进一步拆分。于业务角度,使得开发人员能够全身心投入到业务实现上;于资源角度,使得运维人员能够基于业务实现进行资源配置文件的模版建立以及编排操作。
为了省事,我直接在github上clone了一个小型webpack项目, 这是地址:https://github.com/acexyf/WebpackTest
指令:fis3 release –w –d ./project(project自己建的文件)
最近一段时间刚好在公司内部涉及一些老旧项目的优化,所以对于 Web 网页性能方面沉淀了一些自己的看法。
我们在开发的时候会习惯缩进和写注释,方便我们在日常的维护,但将代码上传至服务端后,我们完全可以把那些空格、制表符、换行符进行压缩,以此减少请求资源的大小;同样的,我们在服务端所引用的第三方库进行合并,能减少 HTTP 的请求数量
首先是Html代码,习惯上会将菜单放在一个div里,使用盒子模型,方便以后的操作和设置样式。
随着微信平台的发展,微信公众号变的也相当火爆,成为了众多商家吸引大众眼球的一个基地。这些商家在这个平台上发布自己的活动,这些活动需要程序员来使用网页代码来实现,下面我来说一下微信平台上通过向上滑动屏幕实现整个页面变换的特效,先来看一下代码吧:
Ext的对话框都封装在Ext.MessageBox类,该类还有一个简写形式即Ext.Msg,可以直接通过Ext.MessageBox或Ext.Msg来直接调用相应的对话框方法来显示Ext对话框。
✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (1000套) 】 🧡 程序员有趣的告白方式:【💌HTML七夕情人节表白网页制作 (110套) 】 🌎超炫酷的Echarts大屏可视化源码:【🔰 echarts大屏展示大数据平台可视化(150套) 】 🎁 免费且实用的WEB前端学习指南: 【📂web前端零基础到高级学习视频教程 120G干货分享】 🥇 关于作者: 历任研发工程师,
前面的文章中,我们配置好了编辑器,实现了 css、html、js 的编辑,现在我们需要做代码实时运行的功能了,并且可以直接写 less、scss、可以写 JavaScript、typescript、react。这个就涉及到了浏览器编译代码的逻辑,前期我们编译语言少一点、先把整体流程跑通,后面可以对语言和功能再慢慢丰富,这也是做项目的主要思路。
WebGL(Web Graphics Library)是一种 JavaScript API,用于在任何兼容的 Web 浏览器中呈现交互式 3D 和 2D 图形,不需要插件,即专门处理计算或处理3D图像的JS API。
前天,我写了一篇简短的文章,描述了如何创建一个简单的 Vue JS 应用程序,而不需要任何构建。人们对此很感兴趣,并给予了很多反馈。许多读者问,在即将发布的 Vue 3版本中,是否可能出现类似的壮举。答案是肯定的。而且,使用 Vue 3,你可以走得更远,不需要任何构建过程就可以享受渐进式 web 框架的力量。
本教程非常适合那些想要扩展技能并为他们的网站添加一项备受追捧的新功能的人。准备好尝试暗黑模式了吗?让我们开始吧!
3. 正常实现es6转换es5 基本实现效果查看webpack官网达到实现效果
jquery在设计之初都是围绕着核心思想write less do more来设计的。整体使用思路与原生js没有太大区别,所以jquery做的最多的一件事情就是简化原生js的代码量。选择器在操作dom上使用非常频繁,所以jq一定会简化选择器使用方式。原生选择器使用如下:
领取专属 10元无门槛券
手把手带您无忧上云