javascript
ajax+json字段变false,JS基础
1.獲取非行間樣式
//獲取非行間css樣式
function getStyle(obj,attr){//獲取非行間樣式,obj是對象,attr是值
if(obj.currentStyle){ ? ? ? ?//針對ie獲取非行間樣式
returnobj.currentStyle[attr];
}else{
returngetComputedStyle(obj,false)[attr]; ? ? ?//針對低版本FireFox
};
};
//為對象寫入/獲取css樣式
function css(obj,attr,value){ ? ? //對象,樣式,值。傳2個參數的時候為獲取樣式,3個是設置樣式
if(arguments.length == 2){ ? ? ?//arguments參數數組,當參數數組長度為2時表示獲取css樣式
returngetStyle(obj,attr); ? ? ? ? ? ?//返回對象的非行間樣式用上面的getStyle函數
}else{
if(arguments.length == 3){ ? ? ?//當傳三個參數的時候為設置對象的某個值
obj.style[attr] = value;
};
};
};
window.onload = function(){
varoDiv = document.getElementById("div1");
varoBtn = document.getElementById("btn");
oBtn.onclick = function(){
alert(getStyle(oDiv,"height"));
css(oDiv,"background","green");
alert(css(oDiv,"width"));
};
};
2.什么是真假?
真:true:非零數字,非空字符串,非空對象
假:false:數字零,空字符串,空對象,null,undefined
3.String 對象屬性
(1)charAt:返回在指定位置的字符。
(2)IndexOf:.檢索字符串。
(3)substring:提取字符串中兩個指定的索引號之間的字符。
(4)replace:替換
(5)slice:提取字符串的片斷,并在新的字符串中返回被提取的部分。
(6)lastIndexOf:從后向前搜索字符串。
(7)toLowercase:把字符串轉換為小寫。
(8)toUppercase:把字符串轉換為大寫。
(9)link:將字符串顯示為鏈接。
(10)split:把字符串分割為字符串數組。
(11)substr:從起始索引號提取字符串中指定數目的字符。
(12)concat:連接字符串。
(13)toString:返回字符串.
4.Array 對象方法
(1)join:把數組的所有元素放入一個字符串。元素通過指定的分隔符進行分隔。
(2)pop:刪除并返回數組的最后一個元素。
(3)sort:對數組的元素進行排序。
(4)push:向數組的末尾添加一個或更多元素,并返回新的長度。
(5)unshift:向數組的開頭添加一個或更多元素,并返回新的長度。
(6)shift:刪除并返回數組的第一個元素。
(7)reverse:顛倒數組中元素的順序。
(8)slice:從某個已有的數組返回選定的元素。
(9)splice:刪除元素,并向數組添加新元素。
5.ajax的兩種解析方法
ajax的全稱:asynchronous javascript and xml
(1)eval: .var dataObj=eval("("+data+")");//轉換為json對象
(2) .data =(new Function("","return "+json))(); ? //使用Function對象來完成,它的典型應用就是在JQUERY中的AJAX方法下的success等對于返回數據data的解析\
6.javascript的事件
onclick ? ? ? ? ? ? 鼠標點擊時觸發(fā)此事件
ondblclick ? ? ? ? 鼠標雙擊時觸發(fā)此事件
onmousedown ?按下鼠標時觸發(fā)此事件
onmouseup ? ? ? 鼠標按下后松開鼠標時觸發(fā)此事件
onmouseover ? ? 當鼠標移動到某對象范圍的上方時觸發(fā)此事件
onmousemove ? ?鼠標移動時觸發(fā)此事件
onmouseout ? ? ? ?當鼠標離開某對象范圍時觸發(fā)此事件
onkeypress ? ? ? ? ?當鍵盤上的某個鍵被按下并且釋放時觸發(fā)此事件.
onkeydown ? ? ? ? ? 當鍵盤上某個按鍵被按下時觸發(fā)此事件
onkeyup ? ? ? ? ? ? ? ?當鍵盤上某個按鍵被按放開時觸發(fā)此事件
onabort ? ? ? ? ? ? ? ? ?圖片在下載時被用戶中斷
onbeforeunload ? ? 當前頁面的內容將要被改變時觸發(fā)此事件
onerror ? ? ? ? ? ? ? ? ? 出現錯誤時觸發(fā)此事件
onload ? ? ? ? ? ? ? ? ? 頁面內容完成時觸發(fā)此事件
onmove ? ? ? ? ? ? ? ? 瀏覽器的窗口被移動時觸發(fā)此事件
onresize ? ? ? ? ? ? ? ? 當瀏覽器的窗口大小被改變時觸發(fā)此事件
onscroll ? ? ? ? ? ? ? ? 瀏覽器的滾動條位置發(fā)生變化時觸發(fā)此事件
onstop ? ? ? ? ? ? ? ? ? 瀏覽器的停止按鈕被按下時觸發(fā)此事件或者正在下載的文件被中斷
onunload ? ? ? ? ? ? ? ?當前頁面將被改變時觸發(fā)此事件
onblur ? ? ? ? ? ? ? ? ? ? 當前元素失去焦點時觸發(fā)此事件
onchange ? ? ? ? ? ? ? 當前元素失去焦點并且元素的內容發(fā)生改變而觸發(fā)此事件
onfocus ? ? ? ? ? ? ? ? ?當某個元素獲得焦點時觸發(fā)此事件
onreset ? ? ? ? ? ? ? ? ? 當表單中RESET的屬性被激發(fā)時觸發(fā)此事件
onsubmit ? ? ? ? ? ? ? ? 一個表單被遞交時觸發(fā)此事件
滾動字幕事件onbounce ? 在Marquee內的內容移動至Marquee顯示范圍之外時觸發(fā)此事件
onfinish ? ? ? ? ? ? ? ? ? 當Marquee元素完成需要顯示的內容后觸發(fā)此事件
onstart ? ? ? ? ? ? ? ? ? ? 當Marquee元素開始顯示內容時觸發(fā)此事件
onbeforecopy ? ? ? ? ? 當頁面當前的被選擇內容將要復制到瀏覽者系統的剪貼板前觸發(fā)此事件
onbeforecut ? ? ? ? ? ? ?當頁面中的一部分或者全部的內容將被移離當前頁面[剪貼]并移動到瀏覽者的系統剪貼板時觸發(fā)此事件
onbeforeeditfocus ? ? 當前元素將要進入編輯狀態(tài)
onbeforepaste ? ? ? ? ? 內容將要從瀏覽者的系統剪貼板傳送[粘貼]到頁面中時觸發(fā)此事件
onbeforeupdate ? ? ? ? 當瀏覽者粘貼系統剪貼板中的內容時通知目標對象
oncontextmenu ? ? ? ? ?當瀏覽者按下鼠標右鍵出現菜單時或者通過鍵盤的按鍵觸發(fā)頁面菜單時觸發(fā)的事件
oncopy ? ? ? ? ? ? ? ? ? ? ? ?當頁面當前的被選擇內容被復制后觸發(fā)此事件
oncut ? ? ? ? ? ? ? ? ? ? ? ? ?當頁面當前的被選擇內容被剪切時觸發(fā)此事件
ondrag ? ? ? ? ? ? ? ? ? ? ? 當某個對象被拖動時觸發(fā)此事件 [活動事件]
ondragdrop ? ? ? ? ? ? ? ?一個外部對象被鼠標拖進當前窗口或者幀
ondragend ? ? ? ? ? ? ? ?當鼠標拖動結束時觸發(fā)此事件,即鼠標的按鈕被釋放了
ondragenter ? ? ? ? ? ? 當對象被鼠標拖動的對象進入其容器范圍內時觸發(fā)此事件
ondragleave ? ? ? ? ? ? 當對象被鼠標拖動的對象離開其容器范圍內時觸發(fā)此事件
ondragover ? ? ? ? ? ? ? 當某被拖動的對象在另一對象容器范圍內拖動時觸發(fā)此事件
ondragstart ? ? ? ? ? ? ? ?當某對象將被拖動時觸發(fā)此事件
ondrop ? ? ? ? ? ? ? ? ? ? ?在一個拖動過程中,釋放鼠標鍵時觸發(fā)此事件
onlosecapture ? ? ? ? ? 當元素失去鼠標移動所形成的選擇焦點時觸發(fā)此事件
onpaste ? ? ? ? ? ? ? ? ? ? 當內容被粘貼時觸發(fā)此事件
onselect ? ? ? ? ? ? ? ? ? ? 當文本內容被選擇時的事件
onselectstart ? ? ? ? ? ? ?當文本內容選擇將開始發(fā)生時觸發(fā)的事件
onafterupdate ? ? ? ? ? 當數據完成由數據源到對象的傳送時觸發(fā)此事件
oncellchange ? ? ? ? ? ? 當數據來源發(fā)生變化時
ondataavailable ? ? ? ? 當數據接收完成時觸發(fā)事件
ondatasetchanged ? ? 數據在數據源發(fā)生變化時觸發(fā)的事件
ondatasetcomplete ? ? 當來子數據源的全部有效數據讀取完畢時觸發(fā)此事件
onerrorupdate ? ? ? ? ? ? 當使用onBeforeUpdate事件觸發(fā)取消了數據傳送時,代替onAfterUpdate事件
onrowenter ? ? ? ? ? ? ? ? ?當前數據源的數據發(fā)生變化并且有新的有效數據時觸發(fā)的事件
onrowexit ? ? ? ? ? ? ? ? ? ? ? 當前數據源的數據將要發(fā)生變化時觸發(fā)的事件
onrowsdelete ? ? ? ? ? ? ? ? 當前數據記錄將被刪除時觸發(fā)此事件
onrowsinserted ? ? ? ? ? ? ? 當前數據源將要插入新數據記錄時觸發(fā)此事件
外部事件onafterprintI ? ? ?當文檔被打印后觸發(fā)此事件
onbeforeprint ? ? ? ? ? ? ? ? ? 當文檔即將打印時觸發(fā)此事件
onfilterchange ? ? ? ? ? ? ? ? ?當某個對象的濾鏡效果發(fā)生變化時觸發(fā)的事件
onhelpIE4、N當瀏覽者按下F1或者瀏覽器的幫助選擇時觸發(fā)此事件
onpropertychange ? ? ? ? ? ?當對象的屬性之一發(fā)生變化時觸發(fā)此事件
onreadystatechange ? ? ? ?當對象的初始化屬性值發(fā)生變化時觸發(fā)此事件
7.事件委托
什么是事件委托:通俗的講,事件就是onclick,onmouseover,onmouseout,等就是事件,委托呢,就是讓別人來做,這個事件本來是加在某些元素上的,然而你卻加到別人身上來做,完成這個事件。也就是:利用冒泡的原理,把事件加到父級上,觸發(fā)執(zhí)行效果。
8.i(for循環(huán)中的i什么情況不能用)?
循環(huán)中加事件不能用i,
解決方法:自定義屬性,封閉空間(循環(huán)中定時器,循環(huán)加事件。自定義屬性第一次加載會過濾掉,所以別加載行間)
9.this問題(this什么時候不能用)?
(1)定時器中不能用this
(2)事件中嵌套一層函數
(3)行間中不能嵌套this
(4)attchevent不能用ths
10.嚴格模式
好處:局部變量,this指向window的buger
不加 ?var聲明變量的buger
不能用 ?with
預解析:變量提前,但不賦值
11.什么是堆棧?
堆:是引用類型 ? 先進先出
棧:是基本類型 ? ?先進先出
總結
以上是生活随笔為你收集整理的ajax+json字段变false,JS基础的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 每天喝可乐,你知道碳酸饮料背后的气泡科学
- 下一篇: 苹果电池鼓包会爆炸吗(手机电池鼓包会爆炸