对bootstrap和jquery版本感到困惑

时间:2015-01-13 12:29:57

标签: jquery twitter-bootstrap-3

我正在尝试实现here所描述的有状态按钮,但它不起作用,所以我尝试了jsfiddle。选择jquery 1.11.0并加载引导程序外部资源,它可以工作。但如果(在jsfiddle中)我改为jquery 2.0.2它就会停止工作;按钮状态不会改变。如果我继续使用jquery 2.1.0,它会再次运行。 也在Bootply中尝试但是它不提供jquery 1.11.0或2.1.0,所以我的代码也不能在那里工作。

<button id="getWebData" type="button" class="btn btn-primary pull-right " data-loading-text="Loading...">Get data</button>

 $("#getWebData").on('click',function() {
   var $btn = $(this).button('loading');
   // bleData.GetWebData($btn);
 })

所以我可以将我的代码更改为使用jquery 2.1.0但是它不适用于IE8(也许这无关紧要)。我可以从jsfiddle看到它应该适用于1.11.0

2 个答案:

答案 0 :(得分:1)

自版本2.x起,jQuery不支持IE8(来源:http://blog.jquery.com/2013/04/18/jquery-2-0-released/)。

您可以尝试使用这样的后备:

<!--[if (!IE)|(gt IE 8)]><!-->
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<!--<![endif]-->

<!--[if lte IE 8]>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<![endif]-->

来源:https://gist.github.com/dwoodiwiss/5633393

答案 1 :(得分:0)

实际上它确实适用于Jquery 1.11.0。 我忘了允许DOM更新按钮:

        $("#getWebData").on('click',function() {
        var $btn = $(this).button('loading');
        setTimeout(function () {
             bleData.GetWebData($btn);
        }, 100);

所以它在GetWebData()中的json调用之后重置了原始按钮,并且从未有机会显示修改过的按钮。 无论如何,它确实从我的jsfiddle出现,有状态按钮使用jquery 2.0.1