随笔分类 -  JavaScript

摘要:要做动画,一般都是要获取元素的一些基本属性,比如宽,高,颜色等 但是对于动态创建的元素,是不能获取这些属性的 只有插入到dom中,经过渲染才能获取这些属性 但是一旦插入到dom当中,先获取在改变就会有跳动的效果 为了避免这种情况,有两种解决方案 一种是将元素设置绝对定位,获取之后然后在放到正确位置, 阅读全文
posted @ 2016-05-28 11:54 李荣飞 阅读(458) 评论(0) 推荐(0)
摘要:function onload(func){ var odd=window.onload; window.onload=function(){ odd&odd();//这个技巧很秒,先判断odd是否存在,然后调用 func(); }} 阅读全文
posted @ 2012-08-27 09:14 李荣飞 阅读(332) 评论(0) 推荐(0)
摘要:var $ = function (id) {return "string" == typeof id ? document.getElementById(id) : id;};var Each = function(list, fun){ for (var i = 0, len = list.length; i < len; i++) { fun(list[i], i); }}; 阅读全文
posted @ 2012-08-15 16:31 李荣飞 阅读(160) 评论(0) 推荐(0)
摘要:<object data="music.mp3" type="application/x-mplayer2" width="0" height="0"> <param name="src" value="music.mp3"> <param name="autostart" value="1"> <param name="playcount" value="infi 阅读全文
posted @ 2012-08-15 16:15 李荣飞 阅读(1441) 评论(0) 推荐(0)
摘要:var idSeed = 0, ua = navigator.userAgent.toLowerCase(), check = function(r){ return r.test(ua); }, isStrict = document.compatMode == "CSS1Compat", isOpera = check(/opera/), isChrome = check(/chrome/), isWebKit = check(/webkit/), ... 阅读全文
posted @ 2012-08-15 15:35 李荣飞 阅读(281) 评论(0) 推荐(0)
摘要:jquery的实现方法function sibling(elem){ var r=[]; var n=elem.parentNode.firstChild; for(;n;n=n.nextSibling){ if(n.nodeType==1&&n!=elem){ r.push(n); } } return r; }一般方法function sibling(elem){ var r=[]; var childs=elem.parentN... 阅读全文
posted @ 2012-08-15 10:40 李荣飞 阅读(807) 评论(0) 推荐(0)
摘要:<script type="text/javascript">window.onload=function(){ var arr=[1,2,34,4,5]; Array.prototype.map = function(func,argu) { for(var i=0;i<this.length;i++){ func.apply(this[i],argu); } }; arr.map(function(){ alert(this); });}</script> 阅读全文
posted @ 2012-08-15 10:17 李荣飞 阅读(3044) 评论(0) 推荐(0)
摘要:有两种方法:一,就是通过父页面改变 这里要理解框架的两个属性 contentWindow 和contentDocument 两个属性的意思和window document意思差不多,不同的是contentWindow 所有浏览器都支持,contentDocument ie6,7不支持,chrome 也不支持<iframe onload="change_height()"></iframe>function change_height(){ var iframe=document.getElementById("iframe_id" 阅读全文
posted @ 2012-07-20 19:31 李荣飞 阅读(308) 评论(0) 推荐(0)
摘要:js中的函数指针是一个神奇的东西定义function check(){};对于上面这个函数,check(函数名)就是函数指针,check指向函数主体,如果alert(ckeck),那么弹出的信息就是function(){…}函数名就是函数指针,并且指向函数匿名函数主体,实际最好是替换,你可以将函数名替换为一个匿名函数即:function(){…},记住每个函数名都可以这样替换这里想说的是函数名运用时的几个注意点:第一个例子: function hanshu(){ alert("我被执行了");} function diaoyong(){ ... 阅读全文
posted @ 2012-06-04 15:19 李荣飞 阅读(10998) 评论(2) 推荐(0)
摘要:得到文档内容的宽度和高度function getElementport(){ if(document.compatMode=="BackCompat"){ return { width:Math.max(document.body.scrollWidth,document.body.clientWidth), height:Math.max(document.body.scrollHeight,document.body.clientHeight) } }else{ return { width:Math.max(document.documentElement.scrol 阅读全文
posted @ 2012-06-04 15:15 李荣飞 阅读(550) 评论(0) 推荐(0)
摘要:ie 其他 addRule insertRule 添加css规则 sheet.rules sheet.cssRules 得到css样式对象 element.sheet element.styleSheet 访问元素样式表对象 currentStyle getComputedStyle() dom方法 获取当前样式 document.body.clientWidth docum... 阅读全文
posted @ 2012-06-04 15:15 李荣飞 阅读(522) 评论(0) 推荐(1)
摘要:实际真正算起来js中继承的方法也就三种,下面一一说明 第一种:原型链继承 先说原型继承的语句,newFunction.prototype=new oldFunction() 很简单就是将基函数的一个实例赋给新函数的原型,这种继承方法可以说是直接,简单,有效,基函数中的所有属性方法都可以被继承,推荐使用. 不过这种方法也有不足,比如说当基函数中的属性有一个是动态属性的时候,oldFunction.... 阅读全文
posted @ 2012-06-01 22:44 李荣飞 阅读(221) 评论(0) 推荐(0)
摘要:函数作用链 当在某个执行环境引用一个标示符时,会从内到外逐级向上搜索,并严格遵循就近一致原则; 作用域可以使变量得到有效,有效的访问; 当某个函数第一次被调用时,会创建一个作用域,并将此作用域赋给其一个内部属性[scope]; 后代的每个执行函数都有一个表示变量的对象的变量对象,全局变量对象始终存在,这也就是为什么我们可以随时访问全局变量; 当创建demo()函数时,会创建一个先包含全... 阅读全文
posted @ 2012-05-29 16:42 李荣飞 阅读(233) 评论(0) 推荐(0)
摘要:// 加入收藏 addFavorite: function() { var aUrls=document.URL.split("/"); var vDomainName="http://"+aUrls[2]+"/"; var description=document.title; try{//IE window.external.AddFavorite(vDomainName,descriptio... 阅读全文
posted @ 2012-05-23 18:21 李荣飞 阅读(187) 评论(0) 推荐(0)
摘要:XPTH 属性轴:bank/p/name/@first------------选择name的first属性 祖先轴:ancestor::p--------------选择祖先为p的祖先节点 祖先自身轴:ancestor-or-self::name选择祖先为name的祖先节点 或者名称为name的本身节点 后继轴:following::money------------选择当前上下文节点后的所有mo... 阅读全文
posted @ 2012-05-21 22:04 李荣飞 阅读(563) 评论(0) 推荐(0)
摘要:document.oncontextmenu=function(){return false;}//屏蔽右键 ||操作符的注意点,两边是完全独立的,比如sheet.rules||cssRules 是典型错误,一定要写成sheet.rules||sheet.cssRules,绝对不能省略sheet. childNodes:一定要加s 阅读全文
posted @ 2012-05-19 20:19 李荣飞 阅读(161) 评论(0) 推荐(0)
摘要:string类charAt(int)访问指定位置的字符注:charCodeAt()返回的是编码,如果是IE8以上可以用中括号直接访问 例str[int]concat(str)连接两个字符串,参数可以是一个或多个 可以是字符串或者对象创建新的字符串split将字符串分割为数组substr(int,length) substring(int start,int end) slice(int start,int end)三个都是截取字符串的方法第一个参数指的是开始截取的开始位置,注意,开始截取是指从参数之后开始截取,也就是从0开始查第二个参数substr指的是截取长度,其他两个截取的结束位置,值得注 阅读全文
posted @ 2012-04-13 17:27 李荣飞 阅读(272) 评论(0) 推荐(0)
摘要:exec要注意以下几点exec返回的是一个数组该数组的属性有input(被匹配的整个字符串) index(匹配到第一个元素的开始位置)lastIndex还有个匹配到第一个属性后,指向的位置 这个属性智能由RegExp 对象!!!来访问通过这个属性可以来获取 所用所匹配到字符的字符串代码如下function o_exec(){ var str="hjjh,catfff,dog,catarigy,catdog,hjfkhj"; var reg=/cat\S*?\b/g; arr=reg.exec(str); while(reg.lastIndex!=str.length){.. 阅读全文
posted @ 2012-04-10 22:08 李荣飞 阅读(3641) 评论(0) 推荐(0)