自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

目尽地平线

前端记录

  • 博客(133)
  • 资源 (12)
  • 问答 (2)
  • 收藏
  • 关注

原创 css3 transform matrix 深入理解

矩阵可以用来表示图形的变换。css3定义了matrix和matrix3d方法,用来表示2维和3维的变换。下文将分析这两个接口的使用方法,并且用下文的思路,实现了一个简单的用js控制css3变换的jquery插件css3js

2017-01-17 19:43:05 11260 3

原创 H5 使用微信开放标签跳转小程序

微信开放标签是微信公众平台面向网页开发者提供的扩展标签集合,可以在网页上提供跳转小程序、打开 App 等能力。本文梳理使用微信开放标签跳转小程序的过程,以备日后查阅。参考链接1. 开放标签说明文档准备已认证的服务号开放标签只能绑定已认证的服务号,只能在微信真机上测试。因此以下都是不行:不能使用测试服务号 不能是普通公众号,只能是服务号 不能使用微信开发者工具开放标签可以跳转任何合法小程序,因此准备任意一个已认证的服务号都可以,不必是小程序绑定的那个服务号。绑定 js 安全域名

2022-03-21 20:52:55 2938

原创 threejs坐标转换

屏幕坐标转three.js坐标将屏幕坐标转变成threejs空间坐标:function transToThreeCoord(x,y){ let mouse = new THREE.Vector3(); mouse.x = (x/window.innerWidth)*2 -1; mouse.y = -(y/window.innerHeigh...

2018-02-08 00:35:50 10827 1

原创 HTML5 响应式图片

现在上网设备越来越多,各种设备的屏幕千差万别,可以使用响应式图片基于屏幕清晰度、视口宽度、艺术设计、浏览器对图片格式的支持情况去加载,使得图片更适合屏幕,同时节省带宽

2017-12-03 02:06:26 1001

原创 Jenkins主从节点配置

jenkins支持主从模式,这将会把构建任务分发到多个从节点去执行,这样就可以支撑起多个项目的大量构建任务,同时,你可以提供多种环境(如:开发环境、生产环境)来对同一个项目进行测试和构建。本文档将针对配置 ubuntu 从节点进行图文介绍,希望可以减少读者试错浪费的时间。

2017-12-01 17:16:30 9834

原创 windows下搭建Vagrant+Virtualbox环境

对于开发人员来说,Vagrant就是一个提供标准化开发环境的工具。通过Vagrant,使每个开发人员电脑上的代码运行环境一致,再也不会出现“在我电脑上运行起来明明没有问题的”这样的开发环境不一致的问题,还可以使用Vagrant在windows下提供linux运行环境,让你可以在windows下使用你熟悉的IDE开发,而代码会同步到Vagrant上运行。

2017-11-15 11:44:58 2683

原创 bower overrides 配置

bower 是一个常用的包管理工具,但是bower overrides配置是什么?怎么用?bower官网没说清楚,这里结合实际的例子,简单讲解一下

2017-09-21 00:01:56 846

原创 threejs- z-fighting 问题

在threejs中,使用z-buffer来处理模型的可见性,由于z-buffer是有限的,难免会出现两个面对应到同一个深度等级的情况,这种情况可能会造成模型的闪烁,破面,是使用threejs经常会遇到的一个问题。在这里做一下总结

2017-09-08 21:40:57 6153

原创 跨域问题及CORS机制

跨域跨域是指一个资源请求与其不在同一个域(源)的资源,不在同一个域(源)是指两个域的协议、域名或端口不同。同源策略出于安全考虑,浏览器制定了同源策略, 限制了某些跨域请求。同源策略是跨域问题产生的根源。但是,同源策略并没有限制所有的跨域请求,比如浏览器不限制加载嵌在标签中跨域的js文件。跨域资源共享(CORS)跨域资源共享(CORS)是浏览器提供的一种跨域协商机制,让前后端

2017-08-25 01:24:37 2451

原创 dashboard windows 前端开发环境搭建

dashboard是kubernetes的云管平台UI界面,正常情况下,其是在linux下开发的,但是,有些特殊情况下,我们也可能希望在windows上搭建起dashboard的开发环境

2017-07-25 21:24:06 4866

原创 threejs-经纬度转换成xyz坐标的方法

用threejs做3D应用时,很经常会接触到球状物体,比如说地球,要定义球上的一点,用经纬度是常用的办法,将经纬度转换成xyz坐标,就可以直接在指定的经纬度上放置我们想要的模型

2017-07-24 14:39:33 38963 6

原创 搭建GitLab+Jenkins持续集成环境图文教程

GitLab是一个代码仓库,用来管理代码。Jenkins是一个自动化服务器,可以运行各种自动化构建、测试或部署任务。所以这两者结合起来,就可以实现开发者提交代码到GitLab,Jenkins以一定频率自动运行测试、构建和部署的任务,帮组开发团队更高效的集成和发布代码。下面是我最近安装GitLab+Jenkins环境的一个过程,记录下来,以备日后参考。另外,这篇文章虽然很长,讲得很琐碎,...

2017-06-12 23:19:05 105734 23

原创 ubuntu联网不稳定,时断时连问题的解决办法

新装的ubuntu联网及其不稳定,时断时连,有可能是受ipv6的影响。

2017-06-08 21:46:26 18808 8

原创 安装kubernetes dashboard时开发环境,运行gulp local-up-cluster任务一直显示wating for a heapster

安装kubernetes dashboard时开发环境,运行gulp local-up-cluster任务一直显示wating for a heapster,这有可能是conf.js配置的错误

2017-05-19 17:15:19 843

原创 threejs路径

路径通常指存在于多种计算机图形设计软件中的以贝塞尔曲线为理论基础的区域绘制方式。路径在Canvas、SVG上都有相关定义,一般用来创建形状。在threejs中,也可以用来创建形状,除此之外,还可以用作物体运动的轨迹。

2017-03-05 21:12:34 10303

原创 threejs向量夹角和夹角方向

计算threejs向量夹角和夹角方向

2017-03-05 21:10:31 14080

原创 threejs渲染器剔除模式

渲染器剔除模式渲染器可以设置成舍弃某些面,如前面、背面等。默认情况下,是剔除掉背面,也就是背对着相机的面。

2017-03-05 21:08:06 6406 3

原创 threejs设置对象层次

threejs提供了层次的支持。和相机处于同一层次的对象可见,否则不可见。在threejs中,最多可以设置32层,默认的层次是1。层次在有些系统中很有用,可以将不同的模式的对象设成不同的层次,这样,切换模式就只需切换一下相机的层次就可以了。

2017-03-05 21:06:36 8270

原创 threejs指定对象旋转中心

默认情况下,对象的旋转中心都是自身的中心。对于组对象而言,也是如此。因此,可以利用这个特点,实现对象绕任何点旋转,也就是指定旋转中心。

2017-03-05 21:04:23 19979 8

原创 threejs对象拾取

对象拾取对象拾取也就是要获得鼠标事件发生位置的图形对象。在threejs中,是通过Raycaster 对象来拾取对象的,ray是射线,caster是投射器,从字面上即可理解其工作原理是:从某个方向发射一条射线,穿过鼠标所在的点,则这条射线经过的对象就是鼠标点击的对象。

2017-03-05 21:00:10 12983 2

原创 threejs纹理

纹理纹理用来表现物体的细节。理论上可以将物体的每个细节建模出来,但是这样时间成本和性能成本都太高,因此,将物体的一些细节用纹理来表示。

2017-02-20 17:24:41 10224

原创 threejs加载3D模型例子

加载3D模型需要使用ColladaLoader加载器,Collada是一个3D模型交换方案,即不同的3D模型可以通过Collada进行相互转换,言外之意,threejs可以使用Collada将3D模型的数据转换成自己支持的格式

2017-02-20 17:20:29 31193 2

原创 threejs骨架形状

骨骼是什么?骨骼就是一个可以控制其它形状的对象。在threejs中,骨骼(Bone)就是一个空的Object3D对象

2017-02-20 17:14:34 5921

原创 threejs精灵(Sprite)

Sprite精灵Sprite叫精灵,计算机图形学中,精灵指包含于场景中的二维图像或动画(wiki)。在threejs中,是指一个永远面向相机的平面

2017-02-16 16:26:47 24088 1

原创 threejs创建平面几何形状

平面几何形状有三种:点,线,面三种,下面说说用threejs创建这几种形状的方法。

2017-02-16 15:18:51 18873

原创 threejs概览

本文讲述threejs的总体概况,希望从一个较高的角度看threejs到底能做什么

2017-02-15 19:12:45 3037 3

原创 threejs相机和渲染器

渲染器渲染器其实代表的是canvas标签。渲染器的类型WebGLRender使用WebGL来渲染图形,速度较快,但是有些机器不支持WebGL。CanvasRender使用canvas2d来渲染图形,在较老的版本上,主要是用来渲染2D图形。现在这个渲染器在新版本中已弃用。创建渲染器创建渲染器代码如下:renderer = new THREE.W

2017-02-14 18:18:18 6114 1

翻译 Java NIO 教程

自Java 1.4开始便有了NIO,这是一个非阻塞IO,与传统IO有很大的不同。IO是一个系统的关键,作为Java程序员,很有必要对NIO有所了解。这系列文章翻译自国外,是比较经典的NIO教程

2017-02-05 12:47:58 395

原创 【移动端html5】 android video播放进度精确控制

在做视频演示或视频游戏的时候,需要对视频进度进行精确控制,但是,android系统对html5 video标签的实现上,却不支持视频的精确定位,基于性能考虑,在暂停时的改变将不会刷新画面。下文是项目中用到的一种变通方法

2017-01-16 10:31:53 8769

原创 大学只待成追忆,只是工作已半年,2016再见

2016已过去,开心的遗憾的都只留下记忆,2017,做更好的自己。

2016-12-28 11:24:35 1903 16

原创 CSS3 线性渐变背景的过渡效果

对于background:-webkit-radial-gradient这种复杂的背景,只能给opacity添加过渡效果,当做背景图片处理

2016-12-27 19:04:16 4958

原创 Snap svg 主要对象

对Snap.svg的一些对象(Element、Matrix、Snap等)作简单说明

2016-12-27 15:49:57 1636

原创 Snap svg:路径变换和相交计算

Snap.svg对原生的svg进行了封装,为svg的创建、操作提供了便捷的方法,但是官网的文档对一些概念没有解释,难免会造成困扰。比如说路径的旋转,就存在变换后得不到路径交点的问题。

2016-12-27 12:04:38 3367

原创 状态模式案例分析

结合实际例子讲解状态模式在前端项目中的使用

2016-11-29 20:21:10 784

原创 CSS3 Perspective

简单介绍一下perspective属性

2016-11-21 20:08:40 924

翻译 使用Chrome Dev Tools, deb.js调试Javascript小技巧

本文讲介绍一些基于 Chrome Dev Tools 的实用的客户端Javascript 调试小技巧。我将重点关注那些无从下手,不知道该在哪儿添加断点的情景。

2016-11-15 20:13:20 1718

原创 一次真实的XXS攻击

这是一个真实的事,一家比较大的公司举办的一个全国性的投票,然而,页面确实写得很烂,做假太容易。

2016-11-11 18:23:50 6151 6

原创 A-Frame WEB VR框架初体验

aFrame是一个Web VR框架,底层是基于threejs的,刚好项目也用到了threejs,就用aFrame试了下效果。初次体验,留个纪念

2016-11-04 16:21:30 2617

原创 DocumentFragment使用

DocumentFragment相当于一份脱离document的文档,所以往其中添加元素,对其中元素做各种操作都不会影响到document文档,不会触发回流、重绘和重组等。使用它的好处在于,你可以合并多个dom操作,减少操作dom的次数。

2016-11-04 11:27:00 938

原创 ESlint静态代码检测工具安装

javascript本身语法比较松散,可以使用eslint进行静态检查,检测出不符合编程规范的地方。本文记录windows下安装eslint的过程

2016-10-31 20:15:39 1532

webpaper出题语言.pptx

webpaper出题语言

2016-11-29

webpack中文指南

官方webpack的中文指南,非常详细

2016-08-19

stomjs和sockjs

stomjs和sockjs是使用java websocket可选工具

2016-06-05

jsp自定义标签教程

很好的一份jsp自定义标签教程,英文写的,但是十分浅显,推荐一读

2016-04-06

求无序序列每个元素最接近的值代码

给出解决最接近值的代码,最接近值问题如下,效率是核心: 问题:给一个n个元素的线性表A,对于每个数 Ai,找到它之前的数中,和它最接近的 数。即对于每个i,计算 Ci = min{|Ai-Aj| | 1<=j<i}

2015-11-24

ADS01-线性结构.pdf

介绍线性结构。其中,使用“求无序序列每个元素最接近的值”一题,使用双向链表删除法将效率提升至o(nlogn),思路独特,值得一看

2015-11-24

轮廓线问题代码

城市轮廓线问题的代码,利用优先队列(大顶堆)辅助解决轮廓线问题。在大公司的笔试里见过类似的题,研究一下还是不错的。

2015-11-24

广东工业大学-优先队列和二叉堆.pdf

利用优先队列(大顶堆)解决轮廓线问题,广东工业大学教程,还不错的

2015-11-24

广东工业大学-计算机学院-伸展树.pdf

广东工业大学-计算机学院-伸展树教程。伸展树是一种可以根据使用频率动态调整结构的树,它可以保证使用频率越高的节点离跟越近,克服平衡树可能会因为节点分布不均而性能下降的问题。

2015-11-20

伸展树的基本实现和区间操作

给定一个长度为N的序列,每个序列的长度是一个整数。要支持以下三种操作:  将[L,R]这个区间所有数加上V.  将[L,R]这个区间翻转,例如 1234变成 4321  求[L,R]区间的最大值 能力有限,实现可能有纰漏,也没有用到lazy_tag

2015-11-20

MbrFix.exe

window+linux双系统情况下卸载Linux需要用到的工具,打开cmd,cd到MbrFix.exe所在的目录,运行:MbrFix /drive 0 fixmbr命令,重启电脑,将直接进入windows,而不会显示选择界面。 然后,打开控制面板-->系统和安全-->管理工具-->计算机管理-->存储-->磁盘管理,将不能识别的卷删掉。不能识别表现为:没有名字,文件系统无法显示。删除时也会显示“此宗卷并非windows创建云云”

2015-11-08

jedis-2.7.2.jar

java连接Redis的一个客户端,Redis官网推荐使用。这里我已经打包好了,免去了打包的麻烦

2015-08-30

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

TA关注的人

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