这是一款基于Bootstrap 3的内置loading指示器的提交按钮特效。该提交按钮可以选择13种loading指示器效果,在点击提交后以不同方式来显示loading指示器动画。

使用方法

使用该提交按钮loading动画特效要引入ladda-themeless.min.css,spin.min.js和ladda.min.js文件。

<link rel="stylesheet" href="dist/ladda-themeless.min.css">
<script src="dist/spin.min.js"></script>
<script src="dist/ladda.min.js"></script>                
              
HTML结构

你需要给按钮添加class ladda-button,并且在<button>中添加一个带class为ladda-label<span>元素。如果你没有手动添加ladda-label元素,它会被插件自动创建。

<button class="ladda-button" data-style="expand-right">
  <span class="ladda-label">Submit</span>
</button>              
              

你也可以使用一个<a>标签来制作提交按钮:

<a href="#" class="btn btn-primary ladda-button" data-style="expand-left">
  <span class="ladda-label">expand-left</span>
</a>                
              

<button>中可以使用下面的data-*属性:

  • data-style:按钮的样式,所有可用的样式如下:
    • data-style="expand-left"
    • data-style="expand-right"
    • data-style="expand-up"
    • data-style="expand-down"
    • data-style="zoom-in"
    • data-style="zoom-out"
    • data-style="slide-left"
    • data-style="slide-right"
    • data-style="slide-up"
    • data-style="slide-down"
    • data-style="contract"
  • data-color:可用的颜色有:green/red/blue/purple/mint。
  • data-size:按钮的尺寸,xs/s/l/xl。
  • data-spinner-size:指示器的尺寸,40像素,默认会根据按钮尺寸动态调整尺寸。
  • data-spinner-color:十六进制颜色值或合法的颜色名称。
JAVASCRIPT

如果你需要在向服务器提交表单的时候制作loading动画效果,可以使用bind()方法:

// Automatically trigger the loading animation on click
Ladda.bind( 'input[type=submit]' );

// Same as the above but automatically stops after two seconds
Ladda.bind( 'input[type=submit]', { timeout: 2000 } );         
              

如果需要使用JavaScript来控制按钮动画,可以使用下面的方法:

// Create a new instance of ladda for the specified button
var l = Ladda.create( document.querySelector( '.my-button' ) );

// Start loading
l.start();

// Will display a progress bar for 50% of the button width
l.setProgress( 0.5 );

// Stop loading
l.stop();

// Toggle between loading/not loading states
l.toggle();

// Check the current state
l.isLoading();              
              

使用下面的方法来停止页面中的所有loading动画。

Ladda.stopAll();