当前位置: 首页 > 图文教程 > 网络编程 > Javascript > Javascript 个人笔记(没有整理,很乱)

Javascript
jQuery生成asp.net服务器控件的代码
javascript 实现的完全兼容鼠标滚轴缩放图片的代码
JavaScript学习笔记(十七)js 优化
使用SyntaxHighlighter实现HTML高亮显示代码的方法
javascript contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
利用jQuery 实现GridView异步排序、分页的代码
jquery.lazyload 实现图片延迟加载jquery插件
Lazy Load 延迟加载图片的 jQuery 插件
jquery 插件实现图片延迟加载效果代码
javascript小数计算出现近似值的解决办法
jquery1.4后 jqDrag 拖动 不可用
jquery 应用代码 方便的排序功能
选择TreeView控件的树状数据节点的JS方法(jquery)
jquery 图片Silhouette Fadeins渐显效果
JQuery Dialog(JS 模态窗口,可拖拽的DIV)
javascript 同时在IE和FireFox获取KeyCode的代码
js 键盘记录实现(兼容FireFox和IE)
javascript 函数速查表
jQuery AnythingSlider滑动效果插件
经典海量jQuery插件 大家可以收藏一下

Javascript 个人笔记(没有整理,很乱)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 66 ::
收藏到网摘: n/a

==============关于元素的显示和隐藏=============
Visibility快于Display
让图画时隐时现会创造很有趣的效果,有2种方法可以实现这个目的:使用CSS的visibility属性或者
display属性。对于绝对位置元素,diaplay和visibility具有同样的效果。两者的区别在于:设置为
display:none的元素将不再占用文档流的空间,而设置为visibility:hidden的元素仍然保留原位置。
==============一点经验=======================
1、JS变量没有块作用域,在判断循环中的定义在整个函数内都有定义
2、split()的参数是一个正则字符串,因此如果用郑泽表达式特殊字符作为参数时一定要转义
=============隐去浏览器中当鼠标移到图片上跳出的工具栏=============
<img galleryimg="no">
或者
<head>
<meta http-equiv="imagetoolbar" content="no">
</head>
=============一些技巧==================
1、#连接不会回到顶部
<a href="#" ōnClick="return false">
---------------
2、关闭不提示
opener=null;
window.close();
============js面向对象编程的一些总结=============
1、静态属性类实例访问不到,同样实例属性只能实例访问
var myfun=function(){this.a="a"};
myfun.b="b";
alert(new myfun().a);//输出a
alert(myfun.a);//输出undefined
alert(myfun.b);//输出b
alert(new myfun().b);//输出undefined
2、给prototype添加属性
添加给prototype的属性将会成为使用这个构造函数创建的对象的通用属性。
function Fish(name, color)
{
this.name=name;
this.color=color;
}
Fish.prototype.livesIn="water";
Fish.prototype.price=20;
正如上面的例子所示,每条实例鱼可以有不同的名字和颜色,但是他们有一个共同的属性,那就是都生活在水里。
这时因为当一个对象被创建时,这个构造函数将会把它的属性prototype赋给新对象的内部属性__proto__。这个__proto__被这个对象用来查找它的属性。
3、用prototype给对象添加函数
通过prototype来给所有对象添加共用的函数。这有一个好处:你不需要每次在构造一个对象的时候创建并初始化这个函数。
4、每个函数都有一个静态name属性(同样,每个内置类都有一个静态name属性),这个属性不能也不会被覆盖
function a()={};
var b=new Function();
alert(b.name);//输出anonymous
alert(a.name);//输出a
alert(Array.name);//输出Array
==================关于this==================
之所以说一下this,是因为他并不完全等同于C++或者Java里面的this变量。
this在js中表示紧贴着调用地点的,非prototype扩展的方法。
比如上面提到的
MyObj.prototype.sayBye = function () {
alert(”Bye” + this.name);
}
这个里面的this,紧贴的非prototype的函数是MyObj(再次注意,js中class是通过函数实现的),所以this.name就是实例变量。
但是在这种情况
MyObj.prototype.doSomething = function () {
todo(function () {
alert(this.name);
});
}
这个时候,this表示的是这个匿名函数
function () {
alert(this.name)
}
那么这里就会出现错误,如果想要这样使用,应该使用辅助变量。
MyObj.prototype.doSomething = function () {
var me = this; //把自己的reference赋值给变量me
todo (function () {
alert(me.name); //通过me来访问myObj实例
});
}