原文链接: https://github.com/AlloyTeam/AlloyTouch/wiki/Powerful-transformjs 写在前面 上星期在React微信群里,有小伙伴觉得transformjs直接给DOM添加属性太激进,不可取(由于不在那个微信群,不明白为什么React会谈到transformjs?!).关于这点,其实在一年半前腾讯内部就有相关声音,腾讯内部的小伙伴建议,不要污染那么多吧~~,给个总的namespace,如: var element = document.…
原文链接:https://github.com/AlloyTeam/AlloyTouch/wiki/Powerful-transformjs 写在前面 上星期在React微信群里,有小伙伴觉得transformjs直接给DOM添加属性太激进,不可取(由于不在那个微信群,不明白为什么React会谈到transformjs?!).关于这点,其实在一年半前腾讯内部就有相关声音,腾讯内部的小伙伴建议,不要污染那么多吧~~,给个总的namespace,如: var element = document.q…
nodejs 入门 nodejs 入门教程,大家可以在 github 上提交错误 2016 年最好用的表单验证库 SMValidator.js 前端表单验证工具分享 浅谈前端线上部署与运维 说到前端部署,可能大多数前端工程师在工作中都是使用的公司现成的部署系统,与SRE对接.一起完成前端的部署操作.如果我现在给你一台新注册的云主机,那么你应该怎么做才能把一个前端工程部署到一台云主机上,成为一个可以访问的网页呢?今天我们就来聊聊前端的部署~ 首先,一个前端工程要变成- 一个 jQuery 前端插件…
jQuery早期的事件系统,主要借鉴自Dean-Edward的事件模型.虽说早期的该事件模型也有些许bug,诸如: 1,绑定的事件及其处理程序等数据并未存储到缓存中,而是直接存储在dom元素上,这样不仅污染了dom元素,而且还有可能造成隐患,比如在早期的ie下 拷贝元素,顺带着连这些数据都拷贝了,有可能发生交错引用进而引起内存泄露: 2,对待所有浏览器一视同仁,不论ie系还是现代浏览器,都统一采用 on+type的dom0级事件处理,这样失去了现代浏览器对事件冒泡或者捕获的控制,丧 失了灵活性.…
1.概述 jquery插件开发的主要方法有三种: 1.通过$.extend()来扩展jQuery,即在jQuery命名空间下扩展属性,直接在$对象下调用,不需要再dom下调用,也无法在dom元素下调用: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head&…
  利用在页面中创建<script>节点的方法向不同域提交HTTP请求的方法称为JSONP,这项技术可以解决跨域提交Ajax请求的问题. JSONP的优点是:它不像XMLHttpRequest对象实现的Ajax请求那样受到同源策略的限制:它的兼容性更好,在更加古老的浏览器中都可以运行,不需要XMLHttpRequest或ActiveX的支持:并且在请求完毕后可以通过调用callback的方式回传结果. JSONP的缺点则是:它只支持GET请求而不支持POST等其它类型的HTTP请求:它只支持跨…
一.jQuery 提供开发者开发插件的几种模式 1.$.extend();     //这个方法是绑定在$上面的.可以通过$直接调用 2.$.fn.方法名     //这个方法是绑定在Dom对象上面的可以通过$('').方法名();调用 3.$.widget   //通过jQuery UI 部件工厂模式创建. 二.插件的开发过程 1.$.extend(); 这个方法其实很简单,只是像$上面添加了一个静态的方法而已.主要用途是对插件api的扩展. eg: //$.extend();为了防止,变量和…
在web2.0时代,熟练的使用ajax是每个前端攻城师必备的技能.然而由于受到浏览器的限制,ajax不允许跨域通信. JSONP就是就是目前主流的实现跨域通信的解决方案. 虽然在在jquery中,我们可以通过$.ajax的dataType设置为jsonp来调用jsonp,但是jsonp和ajax的实现原理一个关系都木有.jsonp主要是通过script可以链接远程url来实现跨域请求的.如: <script src="http://jsonp.js?callback=xxx"&g…
在web2.0时代,熟练的使用ajax是每个前端攻城师必备的技能.然而由于受到浏览器的限制,ajax不允许跨域通信. JSONP就是就是目前主流的实现跨域通信的解决方案. 虽然在在jquery中,我们可以通过$.ajax的dataType设置为jsonp来调用jsonp,但是jsonp和ajax的实现原理一个关系都木有.jsonp主要是通过script可以链接远程url来实现跨域请求的.如: <script src="http://jsonp.js?callback=xxx"&g…
JSONP实现跨域通信的解决方案. 在jquery中,我们可以通过$.ajax的dataType设置为jsonp来调用jsonp,但是jsonp和ajax的实现原理一个关系都木有.jsonp主要是通过script可以链接远程url来实现跨域请求的.如: <script src="http://jsonp.js?callback=xxx"></script> callback定义了一个函数名,而远程服务端通过调用指定的函数并传入参数来实现传递参数. 搜索了网上好多…
这篇文章的案例都是来自官方,引用的cdn来自bootcss, 因为angular的官方网站被屏了, 所以要翻, 不过我把整个文档下回来了,方便大家下载可以点击: 打开下载英文版 angular的指令 a标签(也就是html的锚标签): angular的所有事件直接绑定在元素的上,而且事件都是以“ng-****”开头,比如ng-click,ng-keydown,ng-keypress,ng-mouseover.... 基本的绑定事件代码, 点击a标签会触发该控制器内部$scope的alert事件;…
1.jQuery的简介 就像上节所将到的Ajax框架一样,简单的说,jQuery是一个优秀的javascript框架,它能够让用户方便的处理html,events(冒泡)事件,动画效果,ajax交互等,它极大程度的改变了开发者使用javascript的习惯.jQuery自2006年最初创建,已经吸引了众多的javascript高手加入其团队,随着事件推移,jQuery新版本一个一个发布,它越来越受到关注. 如今,jQuery发展到集各种javascript/css/dom和ajax功能于一体的强…
二.JavaScript部分 1. JS 表单弹出对话框函数是?获得输入焦点函数是? 弹出对话框函数:alert(), prompt(), confirm() 获得输入焦点函数:focus() 2. JS 的转向函数是?怎么引入一个外部 JS 文件? 转向使用window.location.href = "" 引入外部 js 使用<script src=""></script> 3. 解释下面语句的意思:document.form["…
当前在互联网上,任何一个稍微复杂的网站或者应用程序都会包含许多HTML.CSS和JavaScript.随着互联网运用的发展以及我们对它的依赖性日益增加,设定一个关于组织和维护你的前端代码的计划是绝对需要的. 当今的一些大型互联网公司,由于越来越多的人会接触到日益增加的前端代码,它们会试图去坚持代码的模块化.这样更改程序的部分代码,并不会无意中过多地影响后续不相关部分的执行过程. 防止意想不到的后果不是一个容易解决的问题,尤其是HTML,CSS和JavaScript本质上是相互依赖的.更糟糕的是,…
注意:这篇文章介绍的 API 尚未完全标准化,并且仍在变动中,在项目中使用这些实验性 API 时请务必谨慎. 引言 现在的 web 严重缺乏表达能力.你只要瞧一眼“现代”的 web 应用,比如 GMail,就会明白我的意思: 堆砌 <div> 一点都不现代.然而可悲的是,这就是我们构建 web 应用的方式.在现有基础上我们不应该有更高的追求吗? 您还可以参考以下HTML5/CSS3相关文章:<使用CSS3开启GPU硬件加速提升网站动画渲染性能><HTML5 WebSocket…
本文主要选取了目前比较流行的JavaScript框架Dojo.Google Closure.jQuery.Prototype.Mootools和YUI进行对比,主要是根据网上的资料整理而成,希望可以供大家参考,如有错误欢迎指出:) 主流框架对比 Dojo(重量级框架) Dojo是一个强大的面向对象JavaScript框架.主要由三大模块组成:Core.Dijit.DojoX.Core提供Ajax,events,packaging,CSS-based querying,animations,JSO…
21. 原生(native)Ajax使用实例 //创建XMLHttpRequest对象的方法 function createXmlHttpRequest(){ if(window.ActiveXObject){ return  new ActiveXObject("Microsoft.XMLHTTP"); }else if(window.XMLHttpRequest){ return  new XMLHttpRequest(); } } //ajax操作 function showCo…
AJAX是web2.0的基石,现在网上流行几种开源的AJAX框架,比如:jQuery,Mootools,Dojo,Ext JS等等,那么我们到底在什么情况下该使用那个框架? 让我们来想想选择AJAX框架的基础: 你的项目需求(即你需要哪些特性,例如是否要求做出精美的界面.特效或其它功能)是否支持A等级的浏览器(IE, Firefox等)?文档的质量:是否完善(包含教程,API,代码示例等)框架的可扩展性如何?为框架写插件容易吗?你是否喜欢它的API的风格?能大多程度上统一你的JavaScript…
[声明:  1.博文原创 未经同意转载必究,欢迎相互交流] [声明:  2.博主未知情况下转载,需显著处注明博文来源] [声明:  3.谢谢尊重劳动成果,谢谢理解与配合~] 一.背景 在生产过程和生活中,遇到好几回需要使用Table的Dom,比如: 1.增添一行表格方便用户交互式填写表单, 2.删除一行表格, 3.获取某一行指定几列的单元格数据并把该数据装载到另一处地方(如:模态框等) 4.获取表格内的某一行指定某些列的行和最大值,最小值,平均值以及对应的下标和整行数据等(为了查询许多所考研学校…
1:Jquery 主页:http://jquery.com/ 设计思想:简洁的方案思想,几乎所有操作都是以选择DOM元素(有强大的Selector)开始,然后是对其的操作(Chaining等特性). 优点: 文件小,压缩后代码只有20多k,无压缩代码94k.Selector和DOM操作的方便: jQuery的Selector与mootools的Element.Selectors.js比较,CSS Selector, XPath Selector(1.2后已删除)Chaining:总是返回一个jQ…
1.引入dojo.js dojo的发行包里有4个子目录,要引入的文件是名叫"dojo"的子目录里的dojo.js. 假设你是这样的目录结构: project | +--dojo-lib | | | +--dijit | +--dojo | +--dojox | +--util | +--dojo_hello_world.html <script type="text/javascript" src="./dojo-lib/dojo/dojo.js&q…
八款Js框架介绍及比较,Dojo .Scriptaculous .Prototype .yui-ext .Jquery .Mochikit.mootools .moo.fx,componentartui (转载) Extjs 与 JQuery 1.Turbomail(www.turbomail.org)下一版本决定用Extjs + jquery 开发.2.JQuery 提供了方便的对网页元素操作方法,但不提供基本控件,如:Tab,Grid,Muen 等,Extjs 是一套   完整的控件库,Ex…
目前流行的JS框架很多Dojo .Scriptaculous .Prototype .yui-ext .Jquery .Mochikit.mootools .moo.fx 等.当然还有很多我都不熟悉的框架,就没有列举. 很多人会在坛子里问,到底哪个框架好呢?哪个框架更牛x呢? 哪个框架OO 更舒服呢? 个人觉得,这是一个新手很容易犯的错误逻辑. 世界上任何东西,任何工具,都没有最好的这一个说法,只有适合和不适合. 我们要根据我们项目的真实需要来选择具有相关特性的框架. 一.JQuery推荐级别:…
上篇 <web自动化测试(1):再谈UI发展史与UI.功能自动化测试>,自动化测试工具众多, PC端常用的功能自动化测试工具 Selenium:开源工具集,用于回归功能测试或者系统用例说明,也可浏览器的兼容性.支持JavaScript.java.C等主流语言 Monkey:安装自带的UI测试工具,主要用来对设备上的程序进行压力测试,检测程序多久的时间会发生异常.monkey命令 Loadrunner:商业性能测试工具,收费,功能强大,适合做复杂场景的性能测试.java编写测试用例 QTP(=&…
1. xml简介 XML:指可扩展标记语言, Extensible Markup Language:类似HTML.XML的设计宗旨是传输数据,而非显示数据. 一个xml文档实例: 1 <?xml version="1.0" encoding="UTF-8"?> 2 <company name="Tencent" address="深圳市南山区"> 3 <department deptNo=&quo…
回顾 经过昨天的优化处理([前端优化之拆分CSS]前端三剑客的分分合合),我们在UI一块做了几个关键动作: ① CSS入UI ② CSS作为组件的一个节点而存在,并且会被“格式化”,即选择器带id前缀,形成的组件如图所示: 这样做基本可以规避css污染的问题,解决绝大多数问题,但是更优的方案总是存在,比如web components中的shadow dom! javascript的组件基本是不可重用的,几个核心原因是: ① 组件实例与实例之间的html.css.Javascript很容易互相污染…
简介 transformjs在非react领域用得风生水起,那么react技术栈的同学能用上吗?答案是可以的.junexie童鞋已经造了个react版本. 动画实现方式 传统 web 动画的两种方式: 纯粹的CSS3 :如:transition/animation+transform(大名鼎鼎的animate.css) JS + CSS3 transition或者animation:这里第一种一样,只是通过js里add class和remove class去增加或者移除对应的动画 纯粹JS控制时…
如你所见.这篇就是要讲下使用transformjs制作星球的过程.你也可以无视文章,直接去看源码和在线演示: 源码 | 在线演示 代码100行多一点,直接看也没有什么压力.下面分几步讲解下. 生成球上点坐标 设球心为 (a,b,c),半径为r, 则球的标准方程为 (x-a)²+(y-b)²+(z-c)²=r² 这里假设球心的(0,0,0),则: 标准方程为 x²+y²+z²=r² 因为可以渲染的时候再把球的本地坐标转为世界坐标进行位移,所以球心(0,0,0)便可以. function rando…
Antecedent Facebook made a HTML5 game long time ago. The opening animation is a piece of software that is similar to tofu, the effect as shown below gif: Facebook was using easeljs and tweenjs of createjs to produce, based on the Canvas animation. Th…
写在前面 记得以前facebook做过一款HTML5游戏.开场动画是一块软体类似豆腐的东西一起摇摆.类似的效果如下面的gif所示: facebook当时使用的是createjs下的子项目easeljs和tweenjs去制作,基于Canvas的动画.基本的原理主要是:循环运动Canvas抽象的DisplayObject的skewX和scaleY来实现软体摇摆. 目前来看transformjs也能做到,因为transformjs也能运动skewX和scaleY.先来看看facebook的方式. tw…