1.路径符号的含义
src="/js/jquery.js"、"../"这个斜杠是绝对路径的意思,表示的是网站根目录.
其他的如"./ " 、 "../" 、 "jquery.js" 、 "js/jquery.js"等等表示的都是相对当前网页的路径,是相对路径。
2.獲取網站的根目錄
function GetRootPath() {
var strFullPath = window.document.location.href;
var strPath = window.document.location.pathname;
var pos = strFullPath.indexOf(strPath);
var prePath = strFullPath.substring(0, pos);
var postPath = strPath.substring(0, strPath.substr(1).indexOf('/') + 1);
return (prePath + postPath);
}
3.獲取url的參數
//網站的 url如: http://www.A.COM?a=12
String.prototype.getQuery = function (name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = this.substr(this.indexOf("?") + 1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
var strHref = window.location.href;
alert(strHref.getQuery("a"));
4. js中的函數
4.1 Math.round 四捨五入
document.write(Math.round(0.60) + "
") 1
document.write(Math.round(0.50) + "
") 1
document.write(Math.round(0.49) + "
") 0
document.write(Math.round(-4.40) + "
") -4
document.write(Math.round(-4.60)) -5
4.2 Math.random() 返回 0 到 1 之间的随机数。
document.write(Math.random())
document.write(Math.floor(Math.random()*11)) Math 对象的 floor() 方法和 random() 来返回一个介于 0 和 10 之间的随机数
4.3 isNaN() 是否是非數字,如果是非數字true,否則false
4.4 Number() 把对象的值转换为数字
4.5 parseFloat() parseInt()如果字符串的第一个字符不能被转换为数字会返回 NaN
4.6 String() 函数把对象的值转换为字符串
5.數組
5.1 數組合併成數組concat合併數組,生成新的數組,原數組不變
var arr = new Array(3)//定義數組
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
var arr1 = new Array(3)
arr1[0] = "James"
arr1[1] = "Adrew"
arr1[2] = "Martin"
var arr2=arr.concat(arr1))
5.2 數組合併成字符串join。默認是","連接的,可以指定,如join(".")
6. 正則表達式 最常用的是test(),找到是true,否則是false
var patt1=new RegExp("e");
document.write(patt1.test("The best things in life are free"));
7.事件
7.1 onload 和 onUnload 頁面加載,卸載時候調用
7.2 onFocus、onBlur 和 onChange 事件通常相互配合用来验证表单
7.3 onSubmit 用于在提交表单之前验证所有的表单域
/*
下面是一个使用 onSubmit 事件的例子。当用户单击表单中的确认按钮时,checkForm() 函数就会被调用。假若域的值无效,此次提交就会被取消。checkForm() 函数的返回值是 true 或者 false。如果返回值为true,则提交表单,反之取消提交。 */
8. cookie
8.1 創建
function setCookie(c_name,value,expiredays)
{
var exdate=new Date()
exdate.setDate(exdate.getDate()+expiredays)
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toGMTString())
}
8.2 讀取
function getCookie(c_name)
{
if (document.cookie.length>0)
{
c_start=document.cookie.indexOf(c_name + "=")
if (c_start!=-1)
{
c_start=c_start + c_name.length+1
c_end=document.cookie.indexOf(";",c_start)
if (c_end==-1) c_end=document.cookie.length
return unescape(document.cookie.substring(c_start,c_end))
}
}
return ""
}
9. 計時
setTimeout() 開始計時
var t=setTimeout("javascript语句",毫秒)
clearTimeout(t)
//停止計時
10. 打開網站
10.1 在另一個窗口打開網站 window.open()
function openW(v){
var str = 'width=200,height=200,left=200,top=200,status=no,scrollbars=no,'
str += 'menubar=no,toolbar=no,resizable=no,location=no'
window.open(v,'',str);
}
10.2 在同一個窗口打開網站
window.location.href ='http://www.sohu.com' ;
11. 對象
11.1 對象定義,銷毀
var oObject = new Object;
// do something with the object here
oObject = null;
11.2 定義類
function Cat(name,color){
this.name = name;
this.color = color;
this.type = "猫科动物";
this.eat = function(){alert("吃老鼠");};
}
11.3 利用JSON去构造一个对象
var People = {
Create: function (name, age) {
this.name = name;
this.age = age;
},
SayHello: function () {
alert("Hello,My name is " + this.name + ".I am " + this.age);
}
};
11.4 利用prototype去构造一个对象
var Person = function (name, age) {
this.name = name;
this.age = age;
};
Person.prototype.Introduce = function () {
alert("My name is " + this.name + ".I'm " + this.age);
}