AJax技术

jQuery基礎教程 · 摘要(2)

字号+ 作者:H5之家 来源:H5之家 2018-03-30 16:08 我要评论( )

十四、對象字面量 一般來說,數字值不需要加引號而字符串值需要加引號。由于內容名是字符串,所以內容通常是需要加引號的。但是,如果對象字面量中的內容名是有效的JavaScript標識符,比如使用駝峰大小寫形式的DOM

十四、對象字面量
一般來說,數字值不需要加引號而字符串值需要加引號。由于內容名是字符串,所以內容通常是需要加引號的。但是,如果對象字面量中的內容名是有效的JavaScript標識符,比如使用駝峰大小寫形式的DOM表示法時,則可以省略引號。

//內容-值對構成的對象 .css({ property1: 'value1', 'property-2': 'value2' })

十五、jQuery還提供了一個強大的 .animate() 方法,用于創建控制更加精細的自定義動畫。 .animate() 方法有兩種形式,第一種形式接收以下4個參數。

// 第一種形式 .animate({property1: 'value1', property2: 'value2'}, duration, easing, function() { alert('The animation is finished.'); } ); // 第二種形式 .animate({ property1: 'value1', property2: 'value2' }, { duration: 'value', easing: 'value', specialEasing: { property1: 'easing1', property2: 'easing2' }, complete: function() { alert('The animation is finished.'); }, queue: true, step: callback });

.animate() 方法針對CSS內容提供了方便簡寫值: ‘show’ 、 ‘hide’和 ‘toggle’ ,以便在簡寫方法不適用時提供另一種簡化 .slideToggle() 等內置效果方法的方式。

十六、obj.height()、obj.outWidth() 等方法返回的是不帶單位的數值。

十七、把非效果方法添加到隊列中的一種方式,就是使用 .queue() 方法。在該方法的回調函數里要添加的這個 next () 方法可以讓隊列在中斷的地方再接續起來。

$switcher .css({position: 'relative'}) .fadeTo('fast', 0.5) .slideUp('slow') .queue(.css({backgroundColor: '#f00'}); next(); }) .slideDown('slow');

十八、隨著在應用效果時需要考慮的變化的增多,要記住這些效果是同時發生還是按順序發生會變得越來越困難。

  • 一組元素上的效果:
    當在一個.animate()方法中以多個內容的方式應用時,是同時發生的;
    當以方法連綴的形式應用時,是按順序發生的(排隊效果)——除非queue選項值為false。
  • 多組元素上的效果:
    默認情況下是同時發生的;
    當在另一個效果方法或者在 .queue() 方法的回調函數中應用時,是按順序發生的(排隊效果)。
  • 十九、HTML內容與DOM內容
    HTML內容是指頁面標記中放在引號中的值,而DOM內容則是指通過JavaScript能夠存取的值。
    大多數情況下,HTML內容與對應的DOM內容的作用都是一樣的,jQuery可以幫我們處理名字不一致的問題。可是,有時候我們的確需要留意這兩種內容的差異。某些DOM內容,例如nodeName 、 nodeType 、 selectedIndex 和 childNodes ,在HTML中沒有對應的內容,因此通過 .attr() 方法就沒有辦法操作它們。此外,數據類型方面也存在差異,比如HTML中的 checked內容是一個字符串,而DOM中的 checked 內容則是一個布爾值。對于布爾值內容,最后是測試DOM內容而不是HTML內容,以確保跨瀏覽器的一致行為。

    在jQuery中,可以通過 .prop() 方法取得和設置DOM內容;通過 .attr() 方法取得和設置HTML內容。

    HTML內容與DOM內容差別最大的地方,恐怕就要數表單控件的值了。比如,文本輸入框的value 內容在DOM中的內容叫 defaultValue ,DOM中就沒有 value 內容。而選項列表( select )元素呢,其選項的值在DOM中通常是通過 selectedIndex 內容,或者通過其選項元素的selected 內容來取得。

    由于存在這些差異,在取得和設置表單控件的值時,最好不要使用 .attr() 方法。而對于選項列表呢,最好連 .prop() 方法也不要使用。那使用什么呢,建議使用jQuery提供的 .val()方法:

    // 取得文本輸入框的當前值 var inputValue = $('#my-input').val(); // 取得選項列表的當前值 var selectValue = $('#my-select').val(); // 設置單選列表的值 $('#my-single-select').val('value3'); // 設置多選列表的值 $('#my-multi-select').val(['value1', 'value2']);

    二十、插入操作
    .insertBefore() 在現有元素外部、之前添加內容;
    .insertAfter() 在現有元素外部、之后添加內容;
    .prependTo() 在現有元素內部、之前添加內容;
    .appendTo() 在現有元素內部、之后添加內容。

    二十一、通常使用“ + ”操作符來拼接字符串,但如果要拼接的字符串太多,那看起來就會很亂。使用 .join() 方法可以避免因要拼接的字符串過多而引起混亂。

    // 下面的兩行代碼結果相同 var str = 'a' + 'b' + 'c'; var str = ['a', 'b', 'c'].join('');

    二十二、使用 .clone() 連同事件一起復制
    在默認情況下, .clone() 方法不會復制匹配的元素或其后代元素中綁定的事件。不過,可以為這個方法傳遞一個布爾值參數,將這個參數設置為 true ,就可以連同事件一起復制,即 .clone(true) 。這樣一來,就可以避免每次復制之后還要手工重新綁定事件的麻煩。

    二十三、Ajax(異步JavaScript和XML)
    從根本上來說,一個Ajax解決方案中涉及如下技術。
    JavaScript:處理與用戶及其他瀏覽器相關事件的交互,解釋來自服務器的數據,并將其呈現在頁面上。
    XMLHttpRequest :這個對象可以在不中斷其他瀏覽器任務的情況下向服務器發送請求。
    文本文件:服務器提供的XML、HTML或JSON格式的文本數據。

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • JAVA AJAX教程第二章-JAVASCRIPT基础知识(2)

      JAVA AJAX教程第二章-JAVASCRIPT基础知识(2)

      2018-03-29 11:00

    • JQuery学习(5-AJAX)

      JQuery学习(5-AJAX)

      2018-03-12 10:10

    • 【JQuery】Ajax

      【JQuery】Ajax

      2018-03-12 08:01

    • JAVA AJAX教程第一章—初识AJAX

      JAVA AJAX教程第一章—初识AJAX

      2018-03-11 11:00

    网友点评