this,你是谁?
摘要:在js中this不像其它语言那样容易理解,它有时候指window对象,有时候又是其它对象,那么this,你到底是谁呢?要分析this就要先理解js中的方法定义,因为this一般都是在方法中使用的,而且方法在js中的地位又很特殊。 在js中定义的方法一定不会单独存在,它必定属于某个对象,所以th...
阅读全文
posted @
2015-02-09 17:08
穆穆
阅读(1054)
推荐(1) 编辑
js之dom_2
摘要:动态脚本1 载入脚本文件var s = document.createElement("script");s.src = "test2.js";s.type = "text/javascript";document.body.appendChild(s);2 创建一段js程序块由于ie中不支持script节点操作文本节点,只能通过script节点的text属性赋值,但safari3.0-不支持text属性var s = document.createElement("script");s.type = "
阅读全文
posted @
2013-10-31 17:52
穆穆
阅读(186)
推荐(0) 编辑
js之dom_1
摘要:DOM ie中有dom对象都是com对象的形式实现的 操作dom时,要注意返回的节点列表、属性列表都是动态的,会随着操作的改变而实时改变 document.getElementById在ie8-不区分大小写并且会表单元素name与查询id相同会被找到 cloneNode方法如果参数true则连同子节点一起复制 DocumentFragment对象可以用来存放需要操作的html片段,以提高性能Element类型 nodeType=1,nodeValue=null,nodeName=标签名(大写) HTML元素是由于HTMLElement表示(Element的子类)或由更具体的子类表示(ie8-不
阅读全文
posted @
2013-10-31 15:41
穆穆
阅读(361)
推荐(1) 编辑
js之AJAX
摘要:AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。AJAX 不是新的编程语言,而是一种使用现有标准的新方法。AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下。AJAX的核心是JavaScript对象XmlHttpRequest。由于ie7-XmlHttpRequest是通过ActiveXObject实现的,所以特殊处理才能兼容function createXHR() { if (typeof XMLHttpRequest != "undefined") { return n
阅读全文
posted @
2013-10-29 16:56
穆穆
阅读(919)
推荐(0) 编辑
js之json
摘要:关于json不了解的,请点击:http://www.json.org/json-zh.htmljson对象的属性必须要用双引号,值为字符串类型也只能使用双引号,例:{"name":"mu"} json不支持undefined类型由于ie8-版本不支持JSON对象,所以需要引用https://github.com/douglascrockford/JSON-js/blob/master/json2.js文件 才能模拟JSON对象并调用它的相关方法 (eval方法虽然也可以做json对象的转换,但不安全)1 js对象转换为json字符串 JSON.strin
阅读全文
posted @
2013-10-29 15:58
穆穆
阅读(2608)
推荐(0) 编辑
js之客户端检测
摘要:1 能力检测判断是否有某个属性或方法,例:在低版本中的opera浏览器中,window下有个opera属性if (window.opera) { alert("opera");}2 怪癖检测通常是浏览器存在某种bug导致的,例:ie9-中如果对象有成员方法toString,则在在for-in中不会被遍历到这种检测可能会因为bug在高版本中被修复而失效var testObj = new Object();testObj.toString = function() { return "testObje";};for (var p in testObj) {
阅读全文
posted @
2013-10-29 13:55
穆穆
阅读(1234)
推荐(0) 编辑
js兼容多浏览器的关闭当前页面
摘要:关闭当前页面,相信不少人在开发中都遇到过这个需求,但面对这么多的浏览器,要做到js的兼容还需要做特殊的处理。关于这方面网上有很多的资料,但大多都是复制粘贴的,没有达到兼容的效果,或者是效果不好。 下面直接上代码://FF中需要修改配置window.close方法才能有作用,为了不需要用户去手动修改,所以用一个空白页面显示并且让后退按钮失效//Opera浏览器旧版本(小于等于12.16版本)内核是Presto,window.close方法有作用,但页面不是关闭只是跳转到空白页面,后退按钮有效,也需要特殊处理var userAgent = navigator.userAgent;if (...
阅读全文
posted @
2013-10-08 11:15
穆穆
阅读(23571)
推荐(2) 编辑
Js作用域链及变量作用域
摘要:要理解变量的作用域范围就得先理解作用域链 用var关键字声明一个变量时,就是为该变量所在的对象添加了一个属性。 作用域链:由于js的变量都是对象的属性,而该对象可能又是其它对象的属性,而所有的对象都是window对象的属性,所以这些对象的关系可以看作是一条链 链头就是变量所处的对象,链尾就是window对象看下面的代码:function t() { var a; function t2() { var b; } }js中函数也是对象,所以变量a所在的对象是t,t又在window对象中,所以a的作用域链如下 t--window 那么b所以在的对象即t2,t2又包含在t中,...
阅读全文
posted @
2012-11-19 11:46
穆穆
阅读(11104)
推荐(6) 编辑
关于JS和C#的正则替换两个小例子
摘要:应用实例:待处理字符串:str=”display=test name=mu display=temp”要求:把display=后的值都改成localhostJS处理方法: str.replace(/display=\w*/g,”display=localhost”);C#处理方法:Regex reg=new Regex(@”display=\w*”); str=reg.Replace(str,”display=localhost”);应用实例:待处理字符串:str=”display=test name=mu display=temp”要求:字符串变为display=localhosttes..
阅读全文
posted @
2012-08-24 00:32
穆穆
阅读(652)
推荐(0) 编辑