spin.js -不能移除旋转器

spin.js - Can't remove the spinner?

本文关键字:旋转 不能 js spin      更新时间:2023-09-26

无论我怎么做,似乎都无法阻止这个旋转器。

我已经到处寻找做这件事的方法,但没有一个我尝试过的工作。

操纵:

http://jsfiddle.net/gmvT4/5/

备份代码:

var opts = {
    lines: 13, // The number of lines to draw
    length: 5, // The length of each line
    width: 2, // The line thickness
    radius: 5, // The radius of the inner circle
    corners: 1, // Corner roundness (0..1)
    rotate: 58, // The rotation offset
    direction: 1, // 1: clockwise, -1: counterclockwise
    color: '#fff', // #rgb or #rrggbb or array of colors
    speed: 0.9, // Rounds per second
    trail: 100, // Afterglow percentage
    shadow: false, // Whether to render a shadow
    hwaccel: false, // Whether to use hardware acceleration
    className: 'spinner', // The CSS class to assign to the spinner
    zIndex: 2e9, // The z-index (defaults to 2000000000)
    top: '50%', // Top position relative to parent
    left: '50%' // Left position relative to parent
};
var target = document.getElementById('foo');
$(document).on('click', '#spin', function () {
    var spinner = new Spinner(opts).spin(target);
});
$(document).on('click', '#stop', function () {
    $("#foo").data('spinner').stop();
});
<div id="foo"></div>
<button id="spin">Spin!</button>
<button id="stop">Stop!</button>

谢谢你的帮助!克雷格。

Uncaught TypeError: Cannot read property 'stop' of undefined

这个错误告诉你一些事情。你试图在$("#foo").data('spinner')上运行.stop()。相反,使用spinner创建的实例,您需要首先在该click事件的作用域之外声明该实例。

var spinner;
$(document).on('click','#spin',function(){
  spinner = new Spinner(opts).spin(target);
});
$(document).on('click','#stop',function(){
  spinner.stop();
});

更新的小提琴c/o雷诺·罗斯