标签归档:JavaScript

Ckeditor 注册事件

<script type="text/javascript">
    CKEDITOR.instances["Content"].on("instanceReady", function () {  
        //set keyup event  
        this.document.on("keyup", AutoSave);  
        //and click event  
        this.document.on("click", AutoSave);  
        //and select event  
        this.document.on("select", AutoSave);  
    });  
    function AutoSave() {//相应的操作过程,可以按下面写,也可以按一般javascript过程写。  
        CKEDITOR.tools.setTimeout(function () {  
            alert("10101010");  
        }, 0);  
    }     
</script>


javascript中赋值运算符的取余等于“%=”

取余等于运算符 %=
解释 计算两个操作数相除的余数,并将余数赋给左操作数
代码演示 <html>
<head>
<script>
var _param; //定义变量
_param=6;//给变量赋值
_param %=4 ; //对变量进行加运算
document.write(“对变量进行%=4操作后,变量的值:” _param “。</br>”);
</script>
</head>
</html>

javascript中赋值运算符的乘等于“*=”

乘等于运算符 *=
解释 将两个操作数相乘并将积赋给左操作数
代码演示 <html>
<head>
<script>
var _param; //定义变量
_param=5;//给变量赋值
_param *= 4 ; //对变量进行加运算
document.write(“对变量进行*=4操作后,变量的值:” _param “。</br>”);
</script>
</head>
</html>

JavaScript面向对象继承方式归纳

面向对象的语言多数都支持继承,继承最重要的优点就是代码复用,从而构建大型软件系统。如果一个类能够重用另一个类的属性和或方法,就称之为继承。从这个角度来看看JS的继承方式。JS中继承方式与写类方式息息相关。不同的写类方式造成不同的继承方式。各种流行JS库继承方式也各不相同。从最简单的复用开始。

1、构造函数方式写类,通过方法调用复制父类属性/字段到子类 实现继承

这里父类,子类都采用构造函数方式写,不用原型。子类调用父类函数来复制父类的属性。

Js代码
  1. **
  2.  * 父类Polygon:多边形
  3.  * @param {Object} sides
  4.  */
  5. function Polygon(sides) {
  6.     this.sides = sides;
  7.     this.setSides = function(s) {this.sides=s;}
  8. }
  9. /**
  10.  * 子类Triangle:三角形
  11.  */
  12. function Triangle() {
  13.     this.tempfun = Polygon;//父类引用赋值给子类的一个属性tempfun
  14.     this.tempfun(3);//调用
  15.     delete this.tempfun;//删除该属性
  16.     this.getArea = function(){};
  17. }
  18. //new个对象
  19. var tri = new Triangle();
  20. console.log(tri.sides);//继承的属性
  21. console.log(tri.setSides);//继承的方法
  22. console.log(tri.getArea);//自有的方法
  23. //缺点是对于Triangle的实例对象用instanceof为父类Polygon时是false
  24. console.log(tri instanceof Triangle);//true
  25. console.log(tri instanceof Polygon);//false

read more

javascript深入理解js闭包

一、变量的作用域

要理解闭包,首先必须理解Javascript特殊的变量作用域。

变量的作用域无非就是两种:全局变量和局部变量。

Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。
Js代码

var n=999;

function f1(){
alert(n);
}

f1(); // 999

另一方面,在函数外部自然无法读取函数内的局部变量。

Js代码

function f1(){
var n=999;
}

alert(n); // error

这里有一个地方需要注意,函数内部声明变量的时候,一定要使用var命令。如果不用的话,你实际上声明了一个全局变量!

Js代码

function f1(){
n=999;
}

f1();

alert(n); // 999

read more

js数组操作

shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined
var a = [1,2,3,4,5];
var b = a.shift(); //a:[2,3,4,5] b:1

unshift:将参数添加到原数组开头,并返回数组的长度
var a = [1,2,3,4,5];
var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5] b:7
注:在IE6.0下测试返回值总为undefined,FF2.0下测试返回值为7,所以这个方法的返回值不可靠,需要用返回值时可用splice代替本方法来使用。

pop:删除原数组最后一项,并返回删除元素的值;如果数组为空则返回undefined
var a = [1,2,3,4,5];
var b = a.pop(); //a:[1,2,3,4] b:5

push:将参数添加到原数组末尾,并返回数组的长度
var a = [1,2,3,4,5];
var b = a.push(6,7); //a:[1,2,3,4,5,6,7] b:7

concat:返回一个新数组,是将参数添加到原数组中构成的
read more

js连接数据库

示例1:(必须建立ODBC数据源)

<HTML>

<script language=javascript>

function connectDb()

{

var ConnDB = new ActiveXObject(“ADODB.Connection”);

ConnDB.ConnectionString=”dsn=test3d;uid=;pwd=;”;

ConnDB.Open();

var Rs = new ActiveXObject(“ADODB.Recordset”);

var tempstr=””;

Rs.Open(“select result from Issue_3D where result=’071′”,ConnDB,1,3);

while(!Rs.EOF)

{

tempstr = tempstr + Rs(“result”) + “<br/>”;

Rs.MoveNext;

}

test.innerHTML=tempstr;

}

</script>

<BODY onbeforeunload=”return ‘ok?'”>

<P><div id=test>&nbsp;</div>

<P><INPUT id=button1 type=button value=显示 name=button1 onclick=”connectDb()”></P>

read more

Firefox兼容的JavaScript回车

if (document.addEventListener) {
    document.addEventListener("keypress", fireFoxHandler, true);
} else {
    document.attachEvent("onkeypress", ieHandler);
}

function fireFoxHandler(evt) {
    if (evt.keyCode == 13) {
        doFilter();
    }
}

function ieHandler(evt) {
    if (evt.keyCode == 13) {
        doFilter();
    }
}

function doFilter() {
    ////
    $j("#page-form").submit();
}

HTML5中对script标签的规定与解释

script 标签用于定义客户端脚本,比如 JavaScript。

除全局属性之外有如下属性

src 定义指向包含脚本的文件的 URL(这样您就可以引用某个包含脚本的文件,而不是直接把脚本插入您的 HTML 文档中)
async 定义脚本是否异步执行。
defer 指示脚本不会生成任何文档内容。浏览器可继续解析并绘制页面。
type 指定MIME类型 默认text/javascript
charset 定义脚本中使用的字符编码。
如果 async 属性为 true,则脚本会相对于文档的其余部分异步执行,这样脚本会在页面继续解析的过程中执行。
如果 async 属性为 false,而 defer 属性为 true,则脚本会在页面完成解析后执行。
如果 read more