如何使用jQuery显示/隐藏bootstrap微调器?

u7up0aaq  于 2023-03-22  发布在  jQuery
关注(0)|答案(5)|浏览(297)

我尝试在单击按钮后显示引导微调器,然后在从API获得响应(基本上是加载状态)后隐藏它。
我的按钮如下:

<div class="col-6">
    <button type="button" name="btn-enviar" class="btn btn-primary w-100">
    <span class="spinner-border spinner-border-sm mr-3" id="spinner" role="status" aria-hidden="true">
    </span>Enviar</button>
</div>

到目前为止,我已经尝试注解/取消注解我的span标记,但没有成功,是否有更简单的方法来启动/停止我的微调器?
我从here中获取的注解/取消注解功能不起作用(按要求):

function comment(element) {
    element.html('<!--' + element.html() + '-->')
}

function uncomment(element) {
    element.html(element.html().substring(4, element.html().length - 3))
}
ybzsozfc

ybzsozfc1#

Html(添加了class .spinner):

<div class="col-6">
    <button type="button" name="btn-enviar" class="btn btn-primary w-100">
    <span class="spinner spinner-border spinner-border-sm mr-3" id="spinner" role="status" aria-hidden="true">
    </span>Enviar</button>
</div>

添加css到css-file:

#spinner { display:none; } 
body.busy .spinner { display:block !important; }

或者使用可见性:

#spinner { visibility:hidden; } 
body.busy .spinner { visibility:visible !important; }

JQuery:

$(document).ready( function()
{
  $('#spinner').on('click', function()
  {
    $('body').addClass('busy');
  });
});

完成后,执行以下操作:

$('body').removeClass('busy');

通过在html页面的主体中添加一个像'忙碌'这样的类,你也可以做一些非常好的事情,比如阻止输入元素等,而不需要额外的js代码。让CSS代替js为你做所有的工作。你只需要添加一些额外的CSS规则。
PS:用html验证器检查你的html是否有错误。如果标记中有错误,可能会发生奇怪的事情或者它不起作用。
玩得开心。

nhn9ugyo

nhn9ugyo2#

元素上有animation-webkit-animation css属性。
使用这样的类

.stop {
 animation-name: none !important;
 -webkit-animation-name: none !important;
}

使用JQuery你可以在元素上切换这个类。如果添加了它,动画将停止。

更新这将显示然后隐藏微调器。

x一个一个一个一个x一个一个二个x

ttp71kqs

ttp71kqs3#

我只是遇到了同样的问题,并解决了它与visibility风格属性。
超文本:

<span class="spinner-border spinner-border-sm" id="spinner" style="visibility: hidden"></span>

联森:

let spinner = document.getElementById("spinner");
spinner.style.visibility = 'visible'; //'hidden'
aemubtdh

aemubtdh4#

$(“#spin_ID”).attr('hidden',true);//隐藏
$(“#spin_ID”).attr('hidden',false);//显示

a14dhokn

a14dhokn5#

我没有得到你的代码,但我把我的想法,你可以试试,如果可行的。

$(document).ready(function() {
  $("#spinner").spinner({
    start: function(event, ui) {
      $('#d1').html("Spinner has started ");
    },
    stop: function(event, ui) {
      $('#d1').html("Spinner has stopped ");
    }
  });
});
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
<link href="https://code.jquery.com/ui/1.12.1/themes/blitzer/jquery-ui.css" rel="stylesheet">
<input id="spinner" class='selector' value=12 size=3>
<div id=d1></div>

相关问题