JqueryUI - 效果



本章將討論effect() 方法,它是用於管理 jQueryUI 視覺效果的方法之一。effect() 方法對元素應用動畫效果,而無需顯示或隱藏它。

語法

effect() 方法具有以下語法:

.effect( effect [, options ] [, duration ] [, complete ] )
序號 引數及描述
1

effect

這是一個字串,指示要用於轉換的效果。

2

options

此引數為物件型別,指示特定於效果的設定和緩動。此外,每個效果都有自己的一組選項,這些選項可以在表jQueryUI 效果中描述的多個效果之間指定。

3

duration

此引數為數字或字串型別,指示效果的毫秒數。其預設值為400

4

complete

此引數為回撥方法,當此元素的效果完成時,會為每個元素呼叫此方法。

jQueryUI 效果

下表描述了可與 effects() 方法一起使用的各種效果:

序號 效果及描述
1

blind

以百葉窗的方式顯示或隱藏元素:透過將底邊向下或向上移動,或將右邊向右或向左移動,具體取決於指定的方向模式

2

bounce

使元素看起來像在垂直或水平方向上彈跳,可以選擇顯示或隱藏元素。

3

clip

透過將元素的相對邊框移到一起直到它們在中間相遇,或反之亦然來顯示或隱藏元素。

4

drop

透過使元素看起來像掉到頁面上或從頁面上掉下來來顯示或隱藏元素。

5

explode

透過將元素拆分為多個碎片來顯示或隱藏元素,這些碎片以徑向方向移動,就像內爆到頁面中或從頁面中爆炸一樣。

6

fade

透過調整其不透明度來顯示或隱藏元素。這與核心淡入淡出效果相同,但沒有選項。

7

fold

透過調整相對邊框的內或外,然後對另一組邊框執行相同的操作來顯示或隱藏元素。

8

highlight

透過在顯示或隱藏元素時短暫更改其背景顏色來引起對元素的注意。

9

puff

在調整其不透明度的同時,在適當位置擴充套件或收縮元素。

10

pulsate

在確保元素按指定顯示或隱藏之前,開啟和關閉元素的不透明度。

11

scale

按指定百分比擴充套件或收縮元素。

12

shake

在垂直或水平方向上左右搖晃元素。

13

size

將元素調整為指定的寬度和高度。類似於 scale,但目標大小的指定方式不同。

14

slide

移動元素,使其看起來像滑到頁面上或從頁面上滑落。

15

transfer

動畫化一個瞬態輪廓元素,使元素看起來像傳輸到另一個元素。輪廓元素的外觀必須透過 CSS 規則為 ui-effects-transfer 類定義,或者作為選項指定的類。

示例

以下示例演示了effect() 方法與上表中列出的不同效果的使用。

效果 - 搖晃

<!doctype html>
<html lang = "en">
   <head>
      <meta charset = "utf-8">
      <title>jQuery UI effect Example</title>
      <link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css"
         rel = "stylesheet">
      <script src = "https://code.jquery.com/jquery-1.10.2.js"></script>
      <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
      
      <!-- CSS -->
      <style>
         #box-1 {
            height: 100px;
            width: 100px;
            background: #b9cd6d;
         }
      </style>
      
      <script>
         $(document).ready(function() {
            $('#box-1').click(function() {
               $( "#box-1" ).effect( "shake", {
                  times: 10,
                  distance: 100
               }, 3000, function() {
                  $( this ).css( "background", "#cccccc" );
               });
            });
         });
      </script>
   </head>
   
   <body>
      <div id = "box-1">Click On Me</div>
   </body>
</html>

讓我們將以上程式碼儲存在一個 HTML 檔案effectexample.htm 中,並在支援 javascript 的標準瀏覽器中開啟它,您應該會看到以下輸出。現在,您可以使用結果:

效果 - 爆炸

<!doctype html>
<html lang="en">
   <head>
      <meta charset="utf-8">
      <title>jQuery UI effect Example</title>
      <link href="https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css"
         rel="stylesheet">
      <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
      <script src="https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
      
      <!-- CSS -->
      <style>
         #box-2 {
            height: 100px;
            width: 100px;
            background: #b9cd6d;
         }
      </style>
      
      <script>
         $(document).ready(function() {
            $('#box-2').click(function() {
               $( "#box-2" ).effect({
                  effect: "explode",
                  easing: "easeInExpo",
                  pieces: 4,
                  duration: 5000
               });
            });
         });
      </script>
   </head>
   
   <body>
      <div id="box-2"></div>
   </body>
</html>

讓我們將以上程式碼儲存在一個 HTML 檔案effectexample.htm 中,並在支援 javascript 的標準瀏覽器中開啟它,您還應該會看到以下輸出。現在,您可以使用結果:

廣告

© . All rights reserved.