随笔分类 -  javascript

摘要:一、概述除了正常运行模式,ECMAscript 5添加了第二种运行模式:"严格模式"(strict mode)。顾名思义,这种模式使得Javascript在更严格的条件下运行。设立"严格模式"的目的,主要有以下几个: - 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为; ... 阅读全文
posted @ 2015-08-30 09:07 $雨$ 编辑
摘要:方法一:用的浏览器内部转换器实现转换,方法是动态创建一个容器标签元素,如DIV,将要转换的字符串设置为这个元素的innerText,然后返回这个元素的innerHTML,即得到经过HTML编码转换的字符串。function HTMLEncode ( input ){var converter = d... 阅读全文
posted @ 2015-01-19 17:21 $雨$ 阅读(1494) 评论(0) 推荐(0) 编辑
摘要:os如果没有页面跳转的需求的话就使用极光推送,如果有页面跳转如果用了极光推送就只有用oc去写,但是我不会oc,所以智能放弃极光选用ios自己的apns来实现新建项目跟安卓创建项目差不多,新建完成后就是初始话phonegap,注意在phonegap.local.properties文件中phonega... 阅读全文
posted @ 2014-08-14 09:15 $雨$ 阅读(2919) 评论(0) 推荐(0) 编辑
摘要:以前javascript对于IO的支持很弱,不能写入相应的文本文件中,而且异常对象Error也不统一,无法打印详细的堆栈。自定义异常对象是个非常 不讨好的方法,因为通常我们只看到其message属性,再者,其他自定义属性需要用最慢的for...in循环遍历出来。这时没有办法了,我们只有求助 于浏览器的各种私有实现,如firefox就有console.log。下面是console对象的方法列表,关于firebug更详细的使用可见这篇文 章。函数说明log(obj[, obj, ...])向控制台输出一个信息。可以输入多个参数,输出将已空格分隔各参数输出。第一参数可以包含格式化文本,例如:log( 阅读全文
posted @ 2013-04-16 14:54 $雨$ 阅读(2420) 评论(0) 推荐(0) 编辑
摘要:var d = new Date(new Date().getTime());alert(d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate()+" "+d.getHours()+":"+d.getMinutes()+":"+d.getSeconds()); 阅读全文
posted @ 2012-10-29 17:10 $雨$ 阅读(7784) 评论(0) 推荐(0) 编辑
摘要:call 方法应用于:Function 对象要求版本 5.5调用一个对象的一个方法,以另一个对象替换当前对象。call([thisObj[,arg1[, arg2[, [,.argN]]]]])参数thisObj可选项。将被用作当前对象的对象。arg1, arg2, , argN可选项。将被传递方法参数序列。说明call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。------------------------------ 阅读全文
posted @ 2012-10-24 09:17 $雨$ 阅读(499) 评论(0) 推荐(0) 编辑
摘要:该方法已经不再是IE Only了,FF3.0+和Opera9.5+已经支持了该方法,可以说在获得页面元素位置上效率能有很大的提高,在以前版本的Opera和Firefox中必须通过循环来获得元素在页面中的绝对位置。document.documentElement.getBoundingClientRect还是实际解释下,该方法获得页面中某个元素的左,上,右和下分别相对浏览器视窗的位置。也不好理解,下面用图说明下。 该方法已经不再是IE Only了,FF3.0+和Opera9.5+已经支持了该方法,可以说在获得页面元素位置上效率能有很大的提高,在以前版本的Opera和Firefox中必须通过循环来 阅读全文
posted @ 2012-09-20 09:28 $雨$ 阅读(237) 评论(0) 推荐(0) 编辑
摘要:可能在你刚开始学习关于jQuery事件处理时,看到的第一个例子就是关于如何阻止浏览器执行默认行为,比如下面这段演示click事件的代码:view plaincopy to clipboardprint?$("a.toggle").click(function(){$("#mydiv").toggle();returnfalse;//Preventbrowserfromvisiting`#`});这个函数使用toggle来显示或者隐藏#mydiv,然后阻止浏览器继续访问href中指定的链接。像上面这样的例子会让用户养成使用“return false”来阻止 阅读全文
posted @ 2012-09-13 15:08 $雨$ 阅读(459) 评论(0) 推荐(1) 编辑
摘要:<html><head><title>无标题文档</title><script type="text/javascript">function share(){var text = '';if(navigator.appName=="Microsoft Internet Explorer"){ text=document.selection.createRange().text;}else{ text=window.getSelection();}var len= get_len 阅读全文
posted @ 2012-08-30 09:19 $雨$ 阅读(1196) 评论(0) 推荐(0) 编辑
摘要:var dayNum = new Date(2012,2,0).getDate(); 阅读全文
posted @ 2012-08-28 10:25 $雨$ 阅读(496) 评论(0) 推荐(0) 编辑
摘要:element.onselectstart=function(){returnfalse};//禁止选中文字element.unselectable='on';//禁止获取焦点element.style.MozUserSelect='none';//禁止火狐选中文字 阅读全文
posted @ 2012-04-01 13:40 $雨$ 阅读(730) 评论(0) 推荐(1) 编辑
摘要:在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。例如:JSON字符串:var str1 = '{ "name": "cxh", "sex": "man" }'; JSON对象:var str2 = { "name": "cxh", "sex": "man" };一、JSON字符串转换为JSON对象要使用上面的str1,必须使用下 阅读全文
posted @ 2012-02-10 17:48 $雨$ 阅读(144839) 评论(4) 推荐(7) 编辑
摘要:正确的方法是正确运用Selection对象和Range对象,实现在光标当前位置插入文本或结点。但是这两个对象在IE和标准的DOM方式的运用方法是不同的。思路:首先获得用户的选区(光标当前位置可理解成起始和终止位置一样的选区)。然后,从Selection对象转成Range对象。目的是利用Range对象的方法插内容进去。最后,插入动作结束后将光标移到插入内容的后面。Html代码 varsel=win.document.selection;//IEvarsel=win.getSelection();//DOMvarrange=sel.createRange();//IE下varrange=sel.g 阅读全文
posted @ 2011-09-02 10:23 $雨$ 阅读(3674) 评论(0) 推荐(0) 编辑
摘要:TextRange对象是动态HTML(DHTML)的高级特性,使用它可以实现很多和文本有关的任务,例如搜索和选择文本。文本范围让您可以选择性的将字符、单词和句子从文档中挑选出来。TextRange对象是在HTML文档将要显示的文本流上建立开始和结束位置的抽象对象。下面是TextRange的常用属性与方法:属性 boundingHeight 获取绑定TextRange对象的矩形的高度 boundingLeft 获取绑定TextRange 对象的矩形左边缘和包含TextRange对象的左侧之间的距离 offsetLeft 获取对象相对于版面或由offsetParent属性指定的父坐标的计算左侧位置 阅读全文
posted @ 2011-09-02 10:04 $雨$ 阅读(6632) 评论(3) 推荐(1) 编辑
摘要:IE:document.selection FireFox:window.getSelection() document.selection只有IE支持,window.getSelection()也只有FireFox和 Safari支持,都不是标准语法。 selection 对象 -------------------------------------------------------------------------------- 代表了当前激活选中区,即高亮文本块,和/或文档中用户可执行某些操作的其它元素。 selection 对象的典型用途是作为用户的输入,以便识... 阅读全文
posted @ 2011-08-31 13:23 $雨$ 阅读(18084) 评论(0) 推荐(0) 编辑
摘要:2级DOM定义了一个createRange()方法,如果是按照DOM此标准的浏览器(IE并不是支持此标准的,但是IE里的属性或方法却远比标准中定义的多得多),它属于document对象,所以创建一个range对象要这样做:var oRange = document.createRange();如果你要检测你的浏览器是否支持此标准Range对象,可以用hasFeature()方法来检测:var supportsDOMRanges = document.implementation.hasFeature("Range", "2.0");if (support 阅读全文
posted @ 2011-08-31 13:11 $雨$ 阅读(969) 评论(0) 推荐(0) 编辑
摘要:cookie概述 假如利用一个不变的框架来存储购物栏数据,而商品显示页面是不断变化的,尽管这样能达到一个模拟全局变量的功能,但并不严谨。例如在导航框架页面内右击,单击快捷菜单中的【刷新】命令,则所有的JavaScript变量都会丢失。因此,要实现严格的跨页面全局变量,这种方式是不行的, JavaScript中的另一个机制:cookie,则可以达到真正全局变量的要求。 cookie 是浏览器提供的一种机制,它将document对象的cookie属性提供给JavaScript。可以由JavaScript对其进行控制,而并不是 JavaScript本身的性质。cookie是存于用户硬盘的一个文件,这 阅读全文
posted @ 2011-08-15 10:15 $雨$ 阅读(312) 评论(0) 推荐(0) 编辑
摘要:Javascript的变量是松散类型的,它可以存储Javascript支持的任何数据类型,其变量的类型可以在运行时被动态改变。请看示例:var n = 10;n = "hello CSSer!";n = {};上面的示例中,首先声明n变量并初始化其值为10(整数类型),接着将字符串“helloCSSer!”赋值给n,接着再赋一个对象给它,最后n的类型是对象类型。可以看出变量n的类型具有动态性,实际编程中,我们建议不要频繁改变变量的类型,因为这对调试没有好处。正因为Javascript中变量类型具有动态性,在程序实际执行的过程中就需要用到类型转换的概念。类型转换可以分为隐式转 阅读全文
posted @ 2011-08-12 11:12 $雨$ 阅读(15770) 评论(3) 推荐(6) 编辑
摘要:在编写Javascript程序时,开发人员不用关心内存问题,内存分配及无用内存的回收完全实现了自动化管理。垃圾收集器会按照预定的时间间隔,周期性的找出那些不再继续使用的变量,然后释放其所占用的内存。具体到浏览器中,用于标识无用变量的策略,通常有两种:标记清除和引用策略。标记清除标记清除策略是Javascript中最常用的垃圾收集方式,截止2008年,IE、Firefox、Opera、Chrome和Safari采用的都是标记清除方式或者类似的策略,只不过垃圾收集的间隔时间有所不同。标记清除的原理很容易理解,当变量进入一个执行环境时,将这个变量标记为“进入环境”,当变量离开环境时,则将其标记为“离 阅读全文
posted @ 2011-08-12 10:39 $雨$ 阅读(2407) 评论(1) 推荐(0) 编辑
摘要:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html> <head> <script> function DivSetVisible(state) { var DivRef = document.getElementById('PopupDiv'); var IfrRef = document. 阅读全文
posted @ 2011-08-08 13:36 $雨$ 阅读(681) 评论(0) 推荐(0) 编辑