获取样式函数封装 function getStyle(ele,attr){ if(ele.currentStyle){ return ele.currentStyle[attr]; } else{ return window.getComputedStyle(ele,null)[attr]; } }; getClass()封装 function getClass(element, names){ //如果存在getElementsByClassName()方法,则直接获取元素. if(docum…
js引入方式: 1.嵌入js的方式:直接在页内的script标签内书写js功能代码. <script type="text/javascript">alert('hello')</script> 2.外联式引入js:以相对路径的方式引入本地js文件,实现H5.CSS.JS分离. <script type="text/javascript" src="hello.js"></script> js变量和…
... [2015.12.02-2016.02.22]期间的学习笔记. 相关博客: Web前端学习笔记[2] 1. JS中的: (1)continue 语句 (带有或不带标签引用)只能用在循环中. (2)break 语句 (不带标签引用),只能用在循环或 switch 中. (通过标签引用),break 语句可用于跳出任何 JavaScript 代码块: =======================================================================…
[2016.02.22至今]的学习笔记. 相关博客: Web前端学习笔记[1] 1. this在 JavaScript 中主要有以下五种使用场景 在全局函数调用中,this 绑定全局对象,浏览器环境全局对象为 window . 作为对象方法使用,this 绑定到该对象. 在对象a的方法b内部的函数c中,this 也绑定全局对象,应该绑定到方法b对应的对象a上.这是 JavaScript的缺陷,解决方法:用that捕捉. 在构造函数中,this 绑定到新创建的对象. 使用apply或call调用函…
....编号    ........类别    ............条目  ................明细....................时间 一.Web前端学习笔记                                    2016年6月15日10:38:53    /****************************************************************begin******************************…
web前端学习笔记(CSS盒子的定位) 相对定位 使用相对定位的盒子的位置常以标准流的排版方式为基础,然后使盒子相对于它在原本的标准位置偏移指定的距离.相对定位的盒子仍在标准流中,它后面的盒子仍以标准流方式对待它.      使用relative,即相对定位,除了将position属性设置为relative之外,还需要指定一定的偏移量,水平方向通过left或者right属性来指定,竖直方向通过top和bottom来指定.以下为后面实验的基准代码. <html xmlns="http://w…
学习笔记---Javascript事件Event.IE浏览器下的拖拽效果     1. 关于event常用属性有returnValue(是否允许事件处理继续进行, false为停止继续操作).srcElement(触发事件的事件源对象)和attachEvent("onclick",function(){...}); 2. a. 实现拖放(Drag and Drop): 目前支支持IE, 若定制某对象为可拖放对象, 则必须覆盖目标对象的dragenter和dragover事件, 可以用e…
JavaScript概述 JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中),后将其改名ScriptEase(客户端执行的语言). Netscape(网景)接收Nombas的理念,(Brendan Eich)在其Netscape Navigator 2.0产品中开发出一套livescript的脚本语言.Sun和Netscape共同完成,后改名叫JavaScript. 微软随后模仿在其IE3.0的产品中搭载了一…
当你在浏览器上点击一个按钮时,点击的事件不仅仅发生在按钮上,同时点击的还有这个按钮的容器元素,甚至也点击了整个页面. 事件流 事件流描述了从页面接收事件的顺序,但在浏览器发展到第四代时,浏览器开发团队提出了两种完全相反的事件流. 冒泡事件流:IE提出的事件流,即事件由最具体的元素接收,逐级向上,传播到页面.…
现在让我们继续跟着大神的脚步前进 学习一下JavaScript中的面向对象的思想,其实作为一个iOS开发者,对面向对象还是比较熟悉的,但是昨晚看了一下Js中的面向对象,妈蛋 一脸萌比啊.还好有大神.让我们跟着大神的思路在捋一下.(在这里更欢迎大家阅读原博 )原博地址:http://www.cnblogs.com/dolphinX/p/4385862.html 理解对象 对象这个词如雷贯耳,同样出名的一句话:XXX语言中一切皆为对象! 对象是什么?什么觉面向对象的编程? 对象(object),台湾…
概览 CSS盒模型,规定了元素框来处理元素的 内容.内边距.边框和外边距的方式 元素部分是指内容部分,也是最实际的内容,包围内容的称之为内边距,内边距外围是边框,边框外围就是外边距:且外边距是透明的,所以并不会阻挡其后的元素 * { margin: 0; padding: 0; } 这是在CSS中最常见的初始化CSS的代码,用于覆盖浏览器的默认样式 浏览器兼容性 大多数浏览器都会按照上面的图示来呈现内容.然而 IE 5 和 6 的呈现却是不正确的.根据 W3C 的规范,元素内容占据的空间是由 w…
学习笔记 关于Jquery的merge方法 话不多说,先上图 使用jquery时,其智能提示如上,大概意思就是合并first和second两个数组,得到的结果是first+(second去重后的结果)的并集 接下来,做出测试: $(function () { var arr1 = ['apple', 'orange',1, 'cherry', 'orange']; var arr2 = ['chen', 343, true, 'cherry',1]; var result = $.merge(a…
在清除浮动前我们要了解两个重要的定义: 浮动的定义:使元素脱离文档流,按照指定方向发生移动,遇到父级边界或者相邻的浮动元素停了下来. 高度塌陷:浮动元素父元素高度自适应(父元素不写高度时,子元素写了浮动后,父元素会发生高度塌陷) 知道浮动和为什么要清除浮动之后我们可以开始学习如何清除浮动了,这时候我们就需要用到清除浮动的属性clear, clear:left | right | both | none | inherit:元素的某个方向上不能有浮动元素 clear:both:在左右两侧均不允许浮…
//Ajax 方法封装 //设置数据格式 function setData(data){ if(!data){ return ''; } else{ var arr = []; for(k in data){ if(!data.hasOwnProperty(k)) continue; if(typeof data[k] == 'function') continue; var value = data[k].toString(); var key = encodeURIComponent(k);…
//Cookie设置 //设置新cookie function setCookie(name,value,duration){ var date = new Date(); date.setTime(date.getTime() + duration*24*3600*1000); document.cookie = name + '=' + value + ';expires=' + date.toGMTString(); }; //获取cookie function getCookie(nam…
//Object.create()创建对象 var obj = Object.create({aa:1,bb:2,cc:'c'}); obj.dd = 4; console.log(obj.cc); // c console.log(obj.hasOwnProperty("cc")); //false console.log(obj.hasOwnProperty("dd")); // true //仿Object.create()方法创建CreateObject函数…
写在前面 工作有那么一段时间了,但是在工作中,发现自己的理论知识还是有所欠缺.特别是在javascript上,很多东西其实自己属于知道要用这个,但是不知道为什么要这么用...这种情况很是尴尬了,所以写博客的很重要一个目的就是锻炼我自己的总结能力,把学到的东西总结出来,感觉这样能让我更快的去理解所学到的东西. ◇ 关于javascript理论 刚开始做前端的时候还是以完成功能为主,所以忽略掉了理论知识的重要性,但是随着工作的慢慢深入,发现很多原理还是要建立在对理论知识的理解与掌握上. 作为一个合格…
官网的英文解释: javascript和jQuery有点关系,js是一种脚本语言,主要用于客户端,现在主要用于实现一些网页效果. jquery是js的一个库,你可以认为是对js的补充,提供了很多方便易用的方法,兼容性也好很多,个人更喜欢用jquery. AJAX全名是Asynchronous Javascript And XML,意思是异步JavaScript和XML.是一种创建交互式网页的技术.简单点说就是能不通过后台在网站前台进行数据库操作了. json(JavaScript Object…
一.概念介绍 prototype 对象 : 原型对象.在JavaScript中, 每一个对象都继承了另一个对象,后者称为"原型对象". 只有 null 除外,它没有自己的原型对象.   原型对象上的所有属性和方法,都能被派生对象所共享.通过构造函数实例的实例对象,都会被自动分配一个原型对象.每一个 构造函数的prototype属性,就是这个实例对象的原型对象. 二.原型使用 如上图,在Animal的源性对象上添加一个属性color,结果会被实例对象bear1.bear2所共享.如果改变…
一.函数的声明 1.1 function 命令 function methodName(params) { // code } 如下声明: function test_function(params) { console.log("function"); } 如上函数, 声明了 test_function函数, 以后使用test_function(params) 都会调用相应的代码, 这就是函数的声明 1.2 函数表达式 除了1.1的函数直接声明,JS还可以用函数赋值给一个变量,即函数…
一.概念介绍 CallBack : "回调" . 在spring优秀框架回调无处不在, 回调的运用场景很多, 如 swt事件监听.netty等.它的主要作用是提高程序执行效率, 一段代码执行时不必等另一段代码执行结束才继续往下run. 在JavaScript也不例外. 二.js 回调语法 传递函数作为回调 function(ag1,ag2...,callback) { // 业务逻辑代码 } js 代码study.js window.mytest = function(str, cal…
一.JavaScript数组的奇葩 大多数语言会要求数组的元素是同个类型, 但是JavaScript允许数组元素为多种类型. var arr = ["羽毛球", 666, {"json:":"666"}]; console.log(arr.length); 二.JavaScript 数组的两种声明 1.var arr = [元素]; var arr = ["坚持"]; 2.new Array(); 或者 var arr2 =…
获取一个0-9的随机数: Math.round(Math.random()*9); 去除数组中重复的元素: var arr=[1,3,5,4,3,3,1,4] function editArr(arr) { var result=[]; for(var i=0; i<arr.length; i++){ if(result.indexOf(arr[i]) == -1){ result.push(arr[i]); } } console.log(result); } editArr(arr); +函…
//JSON方法 //JSON.parse(); var json = '{"name":"zj","age":23}'; JSON.parse(json); //--> {name: "zj", age: 23} // IE6/7不兼容的写法 if(!window.JSON){ window.JSON = { parse:function(json){ return eval('(' + json + ')'); }…
字符串操作: //str.length "micromajor".length // 10 //str.charAt() "micromajor".charAt(0) // "m" "micromajor".charAt(100) // "" //str.indexOf() "micro-major".indexOf("-") // 5 "micro-maj…
原始类型(值类型):Undefined.Null.Number.String.Boolean: 对象类型(引用类型):Object: typeof  可以识别标准类型,null外(返回Object):不能识别具体对象类型(Function除外). 用法举例: var num = 100; typeof num; // 或 typeof(num) --> number 注:除number .string.boolean.undefined.function类型外,其余类型都判断为object(包括…
第一次接触CSS预编译,然后对比后发现其实less的上手容易度确实比sass高不少,再加上公司项目也是使用的less.所以想想还是根据网上的各种教程,整理出来了一些比较基础的.而且比较能让我们这种初学者快速上手的例子. 菜鸡一只,代码要是有错或者表达不清的地方,请各位批评指正! 那么,现在我们就开始正文部分了. 1.什么是less LESS是一种动态的样式语言.Less扩展了CSS的动态行为,比如说,设置变量(Variables).混合书写模式(mixins).操作 (operations)和功…
0x00 前言 相信每一个前端er对于跨域这两个字都不会陌生,在实际项目中应用也是比较多的.但跨域方法的多种多样实在让人目不暇接.老规矩,碰到这种情况,就只能自己总结一篇博客,作为记录. 0x01 什么是跨域 跨域一词从字面意思看,就是跨域名嘛,但实际上跨域的范围绝对不止那么狭隘.具体概念如下:只要协议.域名.端口有任何一个不同,都被当作是不同的域.之所以会产生跨域这个问题呢,其实也很容易想明白,要是随便引用外部文件,不同标签下的页面引用类似的彼此的文件,浏览器很容易懵逼的,安全也得不到保障了就…
0x0 jQuery介绍 jQuery是一个轻量级的.兼容多浏览器的JavaScript库. jQuery使用户能够更方便地处理HTML Document.Events.实现动画效果.方便地进行Ajax交互,能够极大地简化JavaScript编程.它的宗旨就是:“Write less, do more.“ 0x1 jQuery的优势 一款轻量级的JS框架.jQuery核心js文件才几十kb,不会影响页面加载速度. 丰富的DOM选择器,jQuery的选择器用起来很方便,比如要找到某个DOM对象的相…
一. JavaScript简介 1. JavaScript的历史背景介绍 1994年,网景公司(Netscape)发布了Navigator浏览器0.9版.这是历史上第一个比较成熟的网络浏览器,轰动一时.但是,这个版本的浏览器只能用来浏览,不具备与访问者互动的能力.比如,如果网页上有一栏"用户名"要求填写,浏览器就无法判断访问者是否真的填写了,只有让服务器端判断.如果没有填写,服务器端就返回错误,要求用户重新填写,这太浪费时间和服务器资源了. 因此,网景公司急需一种网页脚本语言,使得浏览…