自分で整理したいくつかjavascriptの常用関数
7957 ワード
勉強したばかりなのに、原生はとても書きにくいと思いました.勉強のために、いつもJQを使ってはいけません.だから、自分が必要な時に、いつでも使うように、いくつかの常用関数を整理しました.
/* , , */
var _Doc = document;
// index(this/obg)
function index(current, obj){
for (var i = 0; i < obj.length; i++) {
if (obj[i] == current) {
return i;
}
}
}
// hide(obj) / show(obj) /
function hide(obj){
obj.style.display = 'none';
}
function show(obj){
obj.style.display = 'block';
}
// getId(IdName) / ID
function GetId(IdName){
return _Doc.getElementById(IdName);
}
// GetTag(TagName) / tagname
function GetTag(Fathers,TagName){
return Fathers.getElementsByTagName(TagName);
}
// ajax :http://www.cnblogs.com/yjzhu/archive/2013/01/28/2879542.html
function ajax(url, fnSucc, fnFaild){
//1.
var oAjax = null;
if(window.XMLHttpRequest){
oAjax = new XMLHttpRequest();
}else{
oAjax = new ActiveXObject("Microsoft.XMLHTTP");
}
//2.
oAjax.open('GET', url, true); //open( , url, )
//3.
oAjax.send(null);
//4.
oAjax.onreadystatechange = function(){ //OnReadyStateChange
if(oAjax.readyState == 4){ //4
if(oAjax.status == 200){ //200
fnSucc(oAjax.responseText)
}else{
if(fnFaild){
fnFaild();
}
}
}
};
}
// Load(url,obj) , ajax , load
function Load(url,obj){
ajax(url,function(str){
obj.innerHTML = str;
});
}
//
function DelBlank(str){
return str.replace(/(^\s*)|(\s*$)/g, '');
}
//
function DelSomeStr(Str,SomeStr) {
return Str.replace(SomeStr,"");
}
//
function HasBlank(str){
if (str.indexOf(" ")==-1) {
return true;
} else{
return false;
};
}
// class , ,
function HasClass(obj){
if (obj.getAttribute("class")) {
return true;
} else{
return false;
};
}
// class
function GetClass(obj){
if (HasClass(obj)) {
return obj.getAttribute("class");
}
}
// class
function AddClass(obj,CName){
// class
if (HasClass(obj)) {
// , , OldClass
var OldClass = DelBlank(GetClass(obj));
// , ,
// ,
if (CName!=OldClass) {
obj.className = OldClass+' '+CName;
}
} else{
//
obj.className = CName;
};
}
// class
function RemoveClass(obj,CName){
if (HasClass(obj)){
var OldClass = DelBlank(GetClass(obj));
// 。 , , class
obj.setAttribute("class", DelBlank(DelSomeStr(OldClass,CName)))
}
}
これは今日書いたのです.私は新しい考えをこの中に整理します.