自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 浏览器运行机制笔记

浏览器概念 进程 类比为工厂 程序的实体 线程的容器线程 线程是独立调度和分派的基本单位 一个进程可以有多线程 也可以只有一个线程浏览器是多进程的,主要分为以下几个进程Browser进程 主进程负责浏览器界面显示,与用户交互。如前进,后退等 负责各个页面的管理,创建和销毁其他进程 将Renderer进程得到的内存中的Bitmap,绘制到用户界...

2019-11-22 17:45:50 309

原创 mac前端开发环境的搭建

现在前端规模越来越庞大,各种新东西层出不穷。以前随手拿个编辑器就能写页面的时代到现在什么预处理啦、编译啦、模块啦、打包啦、环境啦一堆。各种框架和设计模式层出不穷,MMP根本学不动啦!!!来到腾讯以后更换了新电脑。每次换新电脑都得配置一大堆东西,所以这篇文章就是记录一下搭建前端开发环境所需要的大致一些步骤。MAC环境首先终端输入sudo spctl --master-disable...

2019-05-07 17:26:42 5765 1

原创 浅谈前端模块化和CommonJs、AMD

背景随着前端代码越来越复杂,怎样写出优雅、清晰、可维护性的代码变的越来越重要。但因为js本身的原因,开始并没有模块化的设计,所以代码开始变的越来越难以组织和维护。为了使它变的可维护,主要经历了以下的几个阶段。js模块化进程的历史写成函数function fn() {}相关的代码块封装在一个函数中是最容易想到的方法,但是他也有不少的缺点。命名污染全局变量、一...

2019-04-04 11:21:15 228

原创 js实现视图和数据双向绑定的探索

前言视图和数据绑定,使视图和逻辑层分离,使视图层变为数据驱动是前端的一大进步。由此诞生了mvvm类的前端框架,大大提升了开发的效率。那么在使用旧有的项目中,如何使用更加先进的设计模式来替换掉大量的面向过程编程。各大框架对于数据绑定的实现都有各自的方式,这里不做深入只是简单介绍一下。Vue使用了es5 Object.defineProperty的特性来实现对数据读取和设置的监听,是...

2019-03-09 21:07:45 622

原创 JQ点击网页空白区域关闭弹窗

在点击弹窗外部的时候可以关闭弹窗,在点击弹窗内部的时候正常进行操作依据事件委托的原理,让根节点触发事件,然后进行判断目标触发节点。如果属于弹窗内部则忽略,如果是弹窗外部关闭弹窗。(document).click(function(e){var modal = $('#modal')if(!modal.is(e.target) && modal.ha...

2019-03-09 20:46:13 2394

原创 bootstrap日历插件使用总结(datetimepicker)

简述很多时候我们会遇到一些旧有的项目。一般此类项目会使用到JQ。在迭代此类项目的时候,考虑不做大改动的情况下使用原有框架相性较高的插件会比较合适。datetimepicker是一个bootstrap的日历插件,可以符合一般性的需求。依赖于jq和bootstrap,在这篇博文里记录一下使用方法和api留待以后查阅。官方文档地址:http://www.bootcss.com/p/boots...

2019-02-18 23:11:53 4093

原创 webpack学习笔记

前言目前的前端项目都会使用打包工具来构建项目。比如vue+WebPack。vue cli本身就整合了webpack,提供了初始模板。首先明确WebPack的用处和工作方式。WebPack可以看做是模块打包机:它做的事情是,分析你的项目结构,找到JavaScript模块以及其它的一些浏览器不能直接运行的拓展语言(Scss,TypeScript等),并将其转换和打包为合适的格式供浏览...

2018-11-13 17:36:21 172

原创 vue实现图片懒加载

vue图片懒加载使用首先第一步,安装插件vue-lazyloadnpm install vue-lazyload --save-dev在man.js中引入插件import VueLazyLoad from 'vue-lazyload'使用Vue.use(VueLazyLoad,{error:'', //加载失败的图loading:'' //加载中的默认图}...

2018-10-23 18:18:03 6972

原创 $scope $watch $state 是什么?

1、AngularJS Scope(作用域)Scope(作用域)是应用在 HTML (视图)和 JavaScript (控制器)之间的纽带。Scope是一个对象,有可用的方法和属性。Scope可应用在视图和控制器上。$scope的使用贯穿整个 Angular App应用,它与数据模型相关联,同时也是表达式执行的上下文.有了 $scope就在视图和控制器之间建立了一个通道,基于作用域视图在修改数...

2018-06-26 11:49:13 776

原创 JS原型和原型链是什么?

Javascript语言的继承机制一直很难被人理解。本文通过一些实际的例子和说明来理解js的原型链是如何实现的,希望你能有所收获。

2018-06-15 17:50:58 42996 6

原创 ui-router使用配置

angular路由路由(route),几乎所有的MVC(VM)框架都应该具有的特性,因为它是前端构建单页面应用(SPA)必不可少的组成部分。那么,对于angular而言,它自然也有内置的路由模块:叫做ngRoute。 不过,大家很少用它,因为它的功能太有限,往往不能满足开发需求!!一个基于ngRoute开发的第三方路由模块,叫做ui.router,受到了大家的“追捧”。 ...

2018-06-10 14:33:13 2200

原创 JS常见的排序算法

JS常见的排序算法 先简单的来了解一下何谓算法。在计算机科学与数学中,一个排序算法(英语:Sorting algorithm)是一种能将一串资料依照特定排序方式进行排列的一种算法最常用到的排序方式是数值顺序以及字典顺序。有效的排序算法在一些算法(例如搜寻算法与合并算法)中是重要的, 如此这些算法才能得到正确解答。排序算法也用在处理文字资料以及产生人类可读的输出结果。基本...

2018-05-25 21:28:25 784

原创 如何将WEB网页打包为APP?

首先我们需要用到HBuilder。什么是HBuilder?HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE。HBuilder的编写用到了Java、C、Web和Ruby。HBuilder本身主体是由Java编写,它基于Eclipse,所以顺其自然地兼容了Eclipse的插件。快,是HBuilder的最大优势,通过完整的语法提示和代码输入法、代码块等,大幅提...

2018-05-16 22:51:10 52391

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除