
JavaScript
zi_jin
关注互联网,关注Web前端技术动态
展开
-
悟透JavaScript
编程世界里只存在两种基本元素,一个是数据,一个是代码。编程世界就是在数据和代码千丝万缕的纠缠中呈现出无限的生机和活力。 数据天生就是文静的,总想保持自己固有的本色;而代码却天生活泼,总想改变这个世界。 你看,数据代码间的关系与物质能量间的关系有着惊人的相似。数据也是有惯性的,如果没有代码来施加外力,她总保持自己原来的状态。而代码就象能量,他存在的唯一目的,就是要努力改变数据原来的状态。转载 2008-05-09 09:42:00 · 608 阅读 · 0 评论 -
javascript事件列表解说
一般事件 onclick IE3、N2 鼠标点击时触发此事件 ondblclick IE4、N4 鼠标双击时触发此事件 onmousedown IE4、N4 按下鼠标时触发此事件 onmouseup IE4、N4 鼠标按下后松开鼠标时触发此事件 onmouseover IE3、N2 当鼠标移动到某对象范围的上方时触发此事件 onmousemove IE4、N4 鼠标移动原创 2008-10-05 15:49:00 · 503 阅读 · 0 评论 -
javascript 扩展Function对象 获取函数名称
Function.prototype.getName = function(){ var s = this.toString(); var m = s.match(/function/s+([^(]+)/); return m[1]; }转载 2008-11-27 11:54:00 · 1967 阅读 · 0 评论 -
在textarea光标指定地方插入内容
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http://community.youkuaiyun.com/Expert/TopicView3.asp?id=5649731-->html xmlns="http://w转载 2008-12-01 15:28:00 · 1286 阅读 · 1 评论 -
onmouseout 和 onmouseleave 有何区别?
比如:在一个标签有一个标签1.由于标签是标签的子标签。所以根据事件冒泡的原理,标签上的onMouseOut和onMouseOver事件会被传递到标签上。2.对于onMouseOut和onMouseOver事件,浏览器会把和看做两个不同的object。从而当鼠标在两者之间移动时,会激发这两个事件。3.而且在浏览器中有一个很有意思的特性,带有连接的文字是空心的。就是说当鼠标点没有定位在文字曲线上时,浏转载 2008-12-05 10:32:00 · 5511 阅读 · 2 评论 -
ajax jsp 无刷新上传文件
首先要说的就是 ajax 是无法实现上传文件的,可以想一下ajax与后台通信都是通过传递字符串,怎么能传递文件呢?其实出于安全考虑js是不能操作文件的,所以就不要再说用ajax来实现文件的上传了,这是不可能的。 而本文实现的文件上传也是无页面刷新的,可以说是一种"类似AJAX"方法。 开始之前先说两句无关的,其实在ajax出现之前,web应用也可以是无刷新的,那时大多通过IFram原创 2009-02-25 10:10:00 · 2269 阅读 · 1 评论 -
JS内存释放问题
一个内存释放的实例 strTest = "1";for ( var i = 0; i { strTest += strTest;}alert(strTest);delete strTest;CollectGarbage();//-->CollectGarbage,是IE的一个特有属性,用于释放内存的使用方法嘛应该是,将该变量或引用对象,设置为null或delete然后在进行释放动作在做Co转载 2009-05-18 21:14:00 · 11578 阅读 · 1 评论 -
解决Flash __flash_unloadHandler 死循环的Bug
跟踪Flash代码,发现只要 Flash 的 AS 代码里执行了 flash.external.ExternalInterface.call ,自动会在页面上面创建 function __flash_unloadHandler() {} 方法.为了防止这个方法对浏览器造成死循环,我们得把这段不必要的方法在页面刷新前清掉. 幸运的是,IE为我们提供了 onbeforeunload 程序代码转载 2009-05-19 18:34:00 · 1708 阅读 · 0 评论 -
解决IE下图片渐隐渐现效果,图片出现“坏点”的bug
QQLive新版官网首页顶部有个焦点图,巨幅图片以渐隐渐现的效果动画切换。这里没有使用Flash来实现,而是直接使用Javascript来控制。 【图片没有了,去http://live.qq.com上面看吧,就是那个每隔5秒切换一次的大图】 用js实现这个效果并不困难,我的方案是每隔指定时间让透明度+0.1,直到1。当然,IE下需要换成0~100范围。但是这里出现了一个原创 2009-11-26 11:10:00 · 1441 阅读 · 0 评论 -
JavaScript对象模型-执行模型↓↑
数据类型基本数据类型基本数据类型是JS语言最底层的实现。简单数值类型: 有Undefined, Null, Boolean, Number和String。注意,描述中的英文单词在这里仅指数据类型的名称,并不特指JS的全局对象N an, Boolean, Number, String等,它们在概念上的区别是比较大的。对象: 一个无序属性的集合,这些属性的值为简单数值类型、对象或者函数。同上,这里的对转载 2010-01-28 09:03:00 · 1163 阅读 · 0 评论 -
扩展Array.prototype.indexOf引发的问题
Array没有indexOf方法,这样在一个数组中查找某个元素的索引时比较麻烦,为了调用方便,于是通过prototype原型扩展了Array.prototype.indexOf(),这样用起来就比较方便了。Array.prototype.indexOf = function(item) {for (var i = 0; i < this.length; i++) {if (this[原创 2010-01-28 22:16:00 · 2767 阅读 · 0 评论 -
Javascript Object Model 图解
转载 2009-12-26 21:06:00 · 1244 阅读 · 0 评论 -
Javascript的一种模块模式
Douglas Crockford已经传授了一个有用的单例模式(singleton pattern)实现此规则,我认为他的模式有益于你基于YUI的那些应用。Douglas叫它模块模式(module pattern)。它是如下工作的: 创建一个命名空间对象:如果你使用YUI,可以用YAHOO.namespace()方法: YAHOO.namespace("myProject");这分配了一个空的my转载 2009-12-26 21:57:00 · 595 阅读 · 0 评论 -
function, new function, new Function
函数是JavaScript中很重要的一个语言元素,并且提供了一个function关键字和内置对象Function,下面是其可能的用法和它们之间的关系。使用方法一:var foo01 = function() //or fun01 = function(){var temp = 100;this.temp = 200;return temp + this.temp;}aler转载 2009-12-26 22:28:00 · 726 阅读 · 0 评论 -
thickbox 如何跨越Iframe
只有Iframe的解决办法 父页和iframe页都要载入 jquery.js thickbox.js thickbox.css修改thickbox.js 函数function tb_init(domChunk)找到tb_show(t,a,g); 这句(我使用的是thickbox3.1版本!)修改为: if (window.parent.frames[window.name]原创 2008-10-05 10:29:00 · 3304 阅读 · 1 评论 -
跨子域页面间的 JavaScript
当某个互联网运营商的网站上规模之后,他们都会考虑将网站部署到主域名相同,子域名不同的服务器集群上,以此来构建一个聚合的应用。同时,希望能够利用 JavaScript,在不同子域的网页间相互操作,实现一个对用户来说“无缝”的应用。这时,跨域操作的技术难点,仿佛一下子从服务器后台,转移到了浏览器前台。因为,浏览器将承载跨子域访问的任务。为什么会这么说呢?因为,我们已经步入了集成化的 RIA 时原创 2008-10-06 16:36:00 · 696 阅读 · 0 评论 -
"this" of JavaScript
this是JavaScript中功能最强大的关键字之一。不幸的是,如果你不知道它具体怎么工作,你将很难正确使用它。 下面我来阐述如何在事件处理中来使用this,之后我会附加一些this相关的例子。 Owner 接下来文章中我们将要讨论的问题是:在函数doSomething()中this所指的是什么? function doSomething() { this.style.color = ?原创 2008-09-28 11:29:00 · 717 阅读 · 0 评论 -
换肤测试程序
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http://www.w3.org/1999/xhtml">换肤测试程序.themes{border:1px solid #000;}var arrCSS=[ ["","css/ocean.css"], ["","css/tangerine.css"], ["","c转载 2008-05-09 14:20:00 · 527 阅读 · 0 评论 -
如何调用Windows自带的配色控件
OBJECT id=dlgHelper CLASSID="clsid:3050f819-98b5-11cf-bb82-00aa00bdce0b" width="0px" height="0px">OBJECT> script>var tempColor = "0099cc";function returnColor(){ var Hcolor = dlgHelper.ChooseColorDl转载 2008-05-18 22:19:00 · 819 阅读 · 0 评论 -
在.NET中使用Newtonsoft.Json转换,读取,写入
using Newtonsoft.Json;using Newtonsoft.Json.Converters;//把Json字符串反序列化为对象目标对象 = JavaScriptConvert.DeserializeObject(JSON字符串, typeof(目标对象));//把目标对象序列化为Json字符串string Json字符串 = JavaScriptConvert.Seriali转载 2008-05-27 09:54:00 · 3091 阅读 · 0 评论 -
Json.NET的简单介绍
首先介绍一个为方便在.NET中使用JSON的API,Json.NET。它方便我们读取从浏览器流向服务器的JSON对象,也方便在响应流中写入JSON对象。这里下载:Json.NET。Json.NET只提供了服务器端的方法,主要有实现JSON文本与XML互相转换的类,有自定义读写JSON的JsonReader类和JsonWriter类,还有一个非自定义读写JSON的JavaScriptSerial转载 2008-05-27 10:00:00 · 5181 阅读 · 1 评论 -
word-wrap,word-break,white-space,text-overflow的区别和用法
在div中,文本布局经常出现,换行混乱的情况。问题表现:1.如果是全英文字符串,中间不包含任何符号(包括空格),不自动换行. 2.中英文混写,则在英文字符串的开始处换行(英文长度>div长度),结尾处不换行。 3.英文整个单词换行。等等,可能还有一些问题,这里只列出了常见的几个;介绍上面几个css属性功能的简单用法; word-wrap:normal |转载 2008-08-25 15:45:00 · 1013 阅读 · 0 评论 -
jquery技巧之让jquery和prototype共存
jquery 和 prototype的冲突就是$()所以我们只要将其中一个 换一种方式使用就可以了首先 将jquery.js放到prototype.js前面(这个是必须的!)。其次 在jquery.js后面将$变量重命名。方法如下: var jQuery=$; 将原来使用的$方法名一律替换为jQuery名,如$("obj")替换为jQuery("obj")。 例如下面的一段代码, 混合了 jQu转载 2008-08-28 09:37:00 · 865 阅读 · 0 评论 -
获得“单击浏览器自带的刷新”
var msg="点浏览器的工具栏刷新";document.onkeydown=function(e){ e=e||event; if(e.keyCode==116)msg="F5刷新"; else if(e.ctrlKey&&e.keyCode==82)msg="Ctrl+R刷新";}document.onclick=function(e){原创 2008-08-28 09:44:00 · 741 阅读 · 0 评论 -
javascript下过滤数组重复值的代码
"javascript"> function getNoRepeat() { return arguments[0].join(‖).match(/(/b[^‖]+/b)(?!.*‖/1/b)/ig); } var tmpArr = [1, a, ab, abc, d, 1.2, a+b, d, e, 5, a, 1, h, c,原创 2008-08-29 09:20:00 · 656 阅读 · 0 评论 -
区别Javascript中的Null与Undefined
在JavaScript中存在这样两种原始类型:Null与Undefined。这两种类型常常会使JavaScript的开发人员产生疑惑,在什么时候是Null,什么时候又是Undefined?Undefined类型只有一个值,即undefined。当声明的变量还未被初始化时,变量的默认值为undefined。Null类型也只有一个值,即null。null用来表示尚未存在的对象,常用来表示函数企转载 2008-09-02 09:34:00 · 1767 阅读 · 0 评论 -
跨浏览器编程之JavaScript
刚参加工作的时候,曾经被一位日本高级工程师所折服,他所写的JavaScript代码非常工整、清晰,浏览器差异都非常的清楚。一直都很佩服他,同时很讨厌浏览器的差异。然而程序员就是这样,很多事情都必须面对,譬如说现在就必须做跨浏览器的应用。网络上没有直接的好咚咚,没办法,一点一滴从零开始积累,为自己为他人提供便利。function fixWidth() { var d = document.g转载 2008-09-10 11:39:00 · 5101 阅读 · 0 评论 -
Javascript与CSS在IE和Firefox中的误区及区别
1. 集合类对象问题 现有代码中许多集合类对象取用时使用 (),IE 能接受,Firefox 不能。 解决方法:改用 [] 作为下标运算。如:document.forms("formName") 改为 Js代码 document.forms["formName"]; //又如: document.getElementsByName("inputName")(1); //改为 documen原创 2008-09-28 11:26:00 · 830 阅读 · 0 评论 -
Javascript常用代码
1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键 no 可用于Table 2. 取消选取、防止复制 3. onpaste="return false" 不准粘贴 4. oncopy="return false;" oncut="return false;" 防止复制 5. IE地址栏前换成自己的图标 6. 可以在收原创 2008-09-28 11:27:00 · 575 阅读 · 0 评论 -
js之clientHeight、offsetHeight,scrollHeight,scrollTop_青春纪念册
clientHeight 大家对 clientHeight 都没有什么异议,都认为是内容可视区域的高度,也就是说页面浏览器中可以看到内容的这个区域的高度,一般是最后一个工具条以下到状态栏以上的这个区域,与页面内容无关。 offsetHeight IE、Opera 认为 offsetHeight = clientHeight + 滚动条 + 边框。 NS、FF 认为 offsetHeight原创 2008-09-28 15:11:00 · 1557 阅读 · 0 评论 -
textContent与innerText的不同
<br />IE下有个innerText属性,FF下有个textContent属性。很多以前给IE写脚本的,在FF下找不到innerText属性,于是网上搜到的建议是用textContent来替代。反之给FF写脚本的也一样。 <br />但是实际上,这里有个误解。网上很多文章说“FF下等效于innerText属性的属性是textContent”————但是事实上并非如此。 innerText与textContent有几点很重要的不同,导致它们在一些情况下不能直接互换使用。 <br />前些日子写了个代码高亮转载 2010-10-08 10:39:00 · 1133 阅读 · 1 评论