jQuery常用知識(shí)點(diǎn)總結(jié)以及平時(shí)封裝常用函數(shù)
本文為大家介紹了jQuery中常用知識(shí)點(diǎn)及函數(shù),包含許多細(xì)節(jié)方面的知識(shí),下面我們一起學(xué)習(xí)一下。
jQuery中為我們提供了很多有用的屬性,自己總結(jié)的一些常用的函數(shù)。個(gè)人認(rèn)為在在線排盤(pán)開(kāi)發(fā)中會(huì)比較常用的,僅供大家學(xué)習(xí)和參考。
剛開(kāi)始學(xué)習(xí)前端的時(shí)候開(kāi)始整理這個(gè)文檔,現(xiàn)在內(nèi)容已經(jīng)逐漸增多。雖然現(xiàn)在看起來(lái),文檔里的內(nèi)容非常簡(jiǎn)單,但是看著這些內(nèi)容,好像還依稀記得這一行行代碼當(dāng)時(shí)被記錄的情景。所以我想把這段回憶保存起來(lái),為剛接觸前端的童鞋們提供一個(gè)簡(jiǎn)單的查詢(xún)的途徑,也以此來(lái)緬懷我的前端學(xué)習(xí)之路。
** 此文檔,我會(huì)持續(xù)更新 **
--------------------------------------------------------------------------------
jquery常用知識(shí)點(diǎn)
jquery效果
隱藏/顯示:
hide/show(speed,callback); speed(空/slow/fast/毫秒) $("#hide").click(function(){ $("p").hide();//隱藏 p標(biāo)簽; $("p").show();//顯示 p=標(biāo)簽; });
淡入/淡出:
fadeIn/fadeout(speed,callback) $(“#click”).click(function(){ $(“#div1”).fadeIn();//直接顯示; $(“#div2”).fadeIn(“slow”);//慢慢顯示; $(“#div3”).fadeIn(3000);//用3秒時(shí)間顯示; })
滑動(dòng):slideDown/slideUp(speed,callback)
$(“#click”).click(function(){ $(“#div1”).slideDown();//直接下滑; $(“#div2”).slideDown(“slow”);//慢慢下滑; $(“#div3”).slideDown (3000);//用3秒時(shí)間下滑; })
動(dòng)畫(huà):
$(".btn1").click(function(){ $("#box").animate({ height:"300px", width:"300px" }); //將寬高變?yōu)?00px; });
jQuery DOM
獲取文本值、屬性值:
<p id=”test”>這是一段文字中的<b>粗體</b></p> <input id=”input” value=”文本值”/> <a id=”a” href=”http://...”></a>
js代碼:
$(“#test”).text();//輸出“這是一段文字中的粗體” $(“#test”).html();//輸出“這是一段文字中的<b>粗體</b>” $(“#input”).val();//輸出“文本值” $(“#a”).attr(“href”);//輸出“http://...”, 獲取元素屬性值
設(shè)置文本屬性值:
js代碼:
$(“#test”).text(''); $(“#test”).html(''); $(“#input”).val(''); $(“#a”).attr('href','xxx');
添加元素:
$(“#test”).append(“<span>添加文本</span>”;//在id=test的標(biāo)簽?zāi)┪蔡砑舆@段代碼 $(“#test”).prepend(“<span>添加文本</span>”;//在被選標(biāo)簽的開(kāi)頭添加這段代碼 $(“#test”).after(“<span>添加文本</span>”;//在被選標(biāo)簽之后添加這段代碼 $(“#test”).before(“<span>添加文本</span>”;//在被選 標(biāo)簽之前添加這段代碼
刪除元素:
$(“#div1”).remove();//刪除被選元素及其所有的子元素 $(“#div1”).empty();//刪除被選元素的所有子元素 $(“#div1”).remove(“.info”);//刪除被選元素的類(lèi)名為info的子元素
查找元素:
$("#test").parent(); //返回被選元素的直接父級(jí)元素(只是一個(gè)); $("#test").parents(); //返回被選元素所有的祖先元素; $("#test").children(空/選擇器);//值為空時(shí)返回被選元素的所有直接子元素(很多),為選擇器時(shí)返回特定子元素(只是一個(gè)); $("#test").find('.aaa'); //在test元素下尋找類(lèi)名為aaa的元素 $("#test").next(); //返回被選元素的下一個(gè)同胞元素(只一個(gè));
操作css:
addClass/removeClass(“…”);//向元素添加/刪除類(lèi)名 $(“p”).css(“color”);//返回p元素的color樣式屬性的值 $(“p”).css(“color”,”red”);//把p元素的color屬性設(shè)為red $(“p”).css({“color”:””red”, “font-size”:”14px”});//同時(shí)給p設(shè)置多個(gè)屬性值
jQuery AJAX:
jquery ajax函數(shù)
我自己封裝了一個(gè)ajax的函數(shù),代碼如下:
var Ajax = function(url, success) { $.ajax({ url: url, type: 'get', dataType: 'json', timeout: 10000, success: function(d) { var data = d.data; success && success(data); }, error: function(e) { throw new Error(e); } }); }; // 使用方法: Ajax('/data.json', function(data) { console.log(data); });
jsonp:
有時(shí)候我們?yōu)榱丝缬?,要使用jsonp的方法,我也封裝了一個(gè)函數(shù):
function jsonp(config) { var options = config || {}; // 需要配置url, success, time, fail四個(gè)屬性 var callbackName = ('jsonp_' + Math.random()).replace(".", ""); var oHead = document.getElementsByTagName('head')[0]; var oScript = document.createElement('script'); oHead.appendChild(oScript); window[callbackName] = function(json) { //創(chuàng)建jsonp回調(diào)函數(shù) oHead.removeChild(oScript); clearTimeout(oScript.timer); window[callbackName] = null; options.success && options.success(json); //先刪除script標(biāo)簽,實(shí)際上執(zhí)行的是success函數(shù) }; oScript.src = options.url + '?' + callbackName; //發(fā)送請(qǐng)求 if (options.time) { //設(shè)置超時(shí)處理 oScript.timer = setTimeout(function () { window[callbackName] = null; oHead.removeChild(oScript); options.fail && options.fail({ message: "超時(shí)" }); }, options.time); } }; // 使用方法: jsonp({ url: '/b.com/b.json', success: function(d){ //數(shù)據(jù)處理 }, time: 5000, fail: function(){ //錯(cuò)誤處理 } });
封裝的常用函數(shù)
$(window).scroll(function() { var a = $(window).scrollTop(); if(a > 100) { $('.go-top').fadeIn(); }else { $('.go-top').fadeOut(); } }); $(".go-top").click(function(){ $("html,body").animate({scrollTop:"0px"},'600'); });
阻止冒泡函數(shù)
function stopBubble(e){ e = e || window.event; if(e.stopPropagation){ e.stopPropagation(); //W3C阻止冒泡方法 }else { e.cancelBubble = true; //IE阻止冒泡方法 } }
獲取url中“?”后的對(duì)象屬性值
var getURLParam = function(name) { return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)', "ig").exec(location.search) || [, ""])[1].replace(/\+/g, '%20')) || null; };
深度拷貝對(duì)象
function cloneObj(obj) { var o = obj.constructor == Object ? new obj.constructor() : new obj.constructor(obj.valueOf()); for(var key in obj){ if(o[key] != obj[key] ){ if(typeof(obj[key]) == 'object' ){ o[key] = mods.cloneObj(obj[key]); }else{ o[key] = obj[key]; } } } return o; }
生成隨機(jī)數(shù)
function randombetween(min,max){ return min + (Math.random() * (max-min +1)); } console.log(parseInt(randombetween(50,100)));
其他
git常用命令
1、git config user.name \ user.email //查看當(dāng)前git的用戶名稱(chēng)、郵箱 2、git clone https://github.com/jarson7426/javascript.git //clone倉(cāng)庫(kù)到本地。 3、修改本地代碼,提交到分支: git add file \ git commit -m “新增文件” 4、把本地庫(kù)推送到遠(yuǎn)程庫(kù): git push origin master 5、查看提交日志:git log -5 6、返回某一個(gè)版本:git reset --hard 123 7、創(chuàng)建分支:git branch name \ git checkout name 8、合并name分支到當(dāng)前分支:git merge name 9、刪除本地分支:git branch -d name 10、刪除遠(yuǎn)程分支: git push origin :daily/x.x.x 11、git checkout -b mydev origin/daily/1.0.0 //把遠(yuǎn)程daily分支映射到本地mydev分支進(jìn)行開(kāi)發(fā) 12、合并遠(yuǎn)程分支到當(dāng)前分支 git pull origin daily/1.1.1 13、發(fā)布到線上: git tag publish/0.1.5 git push origin publish/0.1.5:publish/0.1.5
以上內(nèi)容是小編給大家介紹的jQuery常用知識(shí)點(diǎn)總結(jié)以及平時(shí)封裝常用函數(shù),希望對(duì)大家有所幫助!
- Jquery作者John Resig自己封裝的javascript 常用函數(shù)
- 基于jquery封裝的一個(gè)js分頁(yè)
- jquery數(shù)組封裝使用方法分享(jquery數(shù)組遍歷)
- Jquery封裝tab自動(dòng)切換效果的具體實(shí)現(xiàn)
- jquery自動(dòng)將form表單封裝成json的具體實(shí)現(xiàn)
- jquery datatable后臺(tái)封裝數(shù)據(jù)示例代碼
- jQuery焦點(diǎn)圖切換特效插件封裝實(shí)例
- 基于jquery的用dl模擬實(shí)現(xiàn)可自定義樣式的SELECT下拉列表(已封裝)
- jQueryUI的Dialog的簡(jiǎn)單封裝
- 【經(jīng)典源碼收藏】基于jQuery的項(xiàng)目常見(jiàn)函數(shù)封裝集合
相關(guān)文章
jQuery中借助deferred來(lái)請(qǐng)求及判斷AJAX加載的實(shí)例講解
deferred對(duì)象的延遲功能對(duì)jQuery的ajax操作是一個(gè)很大的幫助,尤其是回調(diào)控制,下面我們就來(lái)看一下對(duì)jQuery中借助deferred來(lái)請(qǐng)求及判斷AJAX加載的實(shí)例講解2016-05-05擴(kuò)展jQuery對(duì)象時(shí)如何擴(kuò)展成員變量具體怎么實(shí)現(xiàn)
這篇文章主要介紹了擴(kuò)展jQuery對(duì)象時(shí)如何擴(kuò)展成員變量,需要的朋友可以參考下2014-04-04逐一介紹Jquery data()、Jquery stop()、jquery delay()函數(shù)(詳)
這篇文章逐一介紹Jquery data()、Jquery stop()、jquery delay()函數(shù)(詳)的相關(guān)資料,需要的朋友可以參考下2015-11-11jQuery實(shí)現(xiàn)tab選項(xiàng)卡效果的方法
這篇文章主要介紹了jQuery實(shí)現(xiàn)tab選項(xiàng)卡效果的方法,實(shí)例分析了jquery實(shí)現(xiàn)tab選項(xiàng)卡切換效果的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07jquery表格datatables實(shí)例解析 直接加載和延遲加載
這篇文章主要針對(duì)jquery表格datatables實(shí)例進(jìn)行解析,可以直接加載和延遲加載,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-08-08firefox下jquery ajax返回object XMLDocument處理方法
使用jquery ajax處理struts2 返回json類(lèi)型的時(shí)候,ajax執(zhí)行成功返回結(jié)果為object XMLDocument,解決方法如下2014-01-01