本文給大家分享的是個人在使用jQuery的過程中總結的5點比較重要的知識點,這里推薦給小伙伴們,有需要的童鞋可以參考下。
1,今天發現jquery獲取的dom對象除了jquery對象外,還可以訪問原來的對象,只要加一個[]就行了,原來還有這樣的功能,之前沒仔細研究。
2,用了first-child,nth-child(n),獲取元素集合里面的第幾個元素。
3,用Jquery訪問nodeText節點,通過訪問原來的對象,nextSibling訪問。訪問是nextSibling.nodeValue;
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
- <title>Zephyr's Document</title>
- <script src="http://common.cnblogs.com/script/jquery.js"></script>
- <style type="text/css" media="screen">
- /*<![CDATA[*/
- /*]]>*/
- </style>
- <script type="text/javascript">
- $(function(){
- var tempBr=$("br");
- tempBr.each(function(index,doElem){
- doElem.nextSibling.nodeValue=doElem.nextSibling.nodeValue.replace(//s{6}/g,"");
- })})
- </script>
- </head>
- <body>
- asdf
- <br />
- " asdf"
- <br />
- " asdf"
- <br />
- " asdf"
- </body>
- </html>
4.DOM對象和jQuery對象轉換
獲取DOM對象代碼如下:
- //獲取DOM對象
- var div1 = document.getElementById("div1");
- div1.innerHTML = "oec2003";
獲取jQuery對象代碼如下:
- //獲取jQuery對象
- var div1 = $("#div1");
- div1.html("oec2003");
jQuery對象轉DOM對象
- //因為ajQuery對象是一個數組對象,所以轉換為DOM對象時要用索引的形式
- var $div1 = $("#div1"); //jQuery對象
- var div1 = $div1[0]; //轉換為了DOM對象
- var div2 = $div1.get(0); //和上面一行效果一樣
- div1.innerHTML = "oec2003";
DOM對象轉jQuery對象
- //DOM對象轉jQuery只需用$包裝即可
- var div1 = document.getElementById("div1");
- var $div1 = $(div1); //轉換為了jQuery對象
- $div1.html("oec2003");
5.解決沖突
有時會有jQuery和其他的庫或自己寫的一些公共腳本文件一起使用的場景,就有可能會出現$沖突的問題,沖突的解決分兩種情況:
1、jQuery庫在其他庫之后引用,如下所示:
復制代碼代碼如下:
在common.js中有對$重新定義,代碼如下:
- function $(id) {
- return document.getElementById(id);
- }
下面是在jQuery中解決沖突的代碼,有四種方式:
- //方式1
- jQuery.noConflict(); //將$控制權移交出去,以前使用$的地方都改用jQuery
- jQuery(document).ready(function () {
- alert(jQuery("#span1").html());
- });
- window.onload = function () {
- $("span1").innerHTML = "oec2003";
- }
- //方式2
- var $j=jQuery.noConflict(); //定義快捷方式
- $j(document).ready(function () {
- alert($j("#span1").html());
- });
- window.onload = function () {
- $("span1").innerHTML = "oec2003";
- }
- //方式3
- jQuery.noConflict(); //在函數內部繼續使用$
- jQuery(function ($) {
- alert($("#span1").html());
- });
- window.onload = function () {
- $("span1").innerHTML = "oec2003";
- }
- //方式4
- jQuery.noConflict(); //在函數內部繼續使用$另一種方式
- (function ($) {
- $(function(){
- alert($("#span1").html());
- });
- })(jQuery);
- window.onload = function () {
- $("span1").innerHTML = "oec2003";
- }
2、jQuery庫在其他庫之前使用
- //如果先引用jQuery腳本,可以不使用noConflict
- //jQuery.noConflict();
- jQuery(document).ready(function () {
- alert(jQuery("#span1").html());
- });
- window.onload = function () {
- $("span1").innerHTML = "oec2003";
- }
以上所述就是本文給大家分享的全部內容了,希望大家能夠喜歡。
新聞熱點
疑難解答
圖片精選