【问题标题】:jQuery slide stopped triggering events in Chrome 61.0.3163.100jQuery 幻灯片停止触发 Chrome 61.0.3163.100 中的事件
【发布时间】:2018-03-20 09:24:49
【问题描述】:

三天前,这用于在移动滑块时打印控制台输出(在 Firefox 中每晚):

$(document).ready(function() {
  $('.slider').slider({
    slide: function() {
      console.log('slide');
    },
    change: function() {
      console.log('change');
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
<input type="range" min="0" max="10" value="0" class="slider" id="slider0" name="slider0"/>

今天当我尝试它时(在 Chrome 61.0 中),它不会将任何内容记录到控制台。我错过了什么,还是某种更新?

【问题讨论】:

    标签: jquery google-chrome jquery-ui jquery-ui-slider


    【解决方案1】:

    它不起作用的原因是&lt;input/&gt; 是它不打算用作jQuery UI 的滑块。这适用于常规输入滑块,并且没有 jQuery UI:

    $(function() {
      var prevVal = {};
      $('.slider').on('change mousemove', function () {
        var slider = $(this);
        if (slider.val() != (prevVal[slider.attr('id')] || 0)) {
          prevVal[slider.attr('id')] = slider.val();
          slider.trigger('slide');
        }
      });
      $('.slider').on('slide', function () {
        console.log('Sliding:', $(this).val());
      });
    });
    

    【讨论】:

      【解决方案2】:

      你可以这样写滑块

      $("#installs").slider({min: 0,max: 500,step: 10,slide: function (event, ui){console.log("slide");},change:function(event,ui{console.log("updatge");}});

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-06-22
        • 2023-03-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-05-06
        相关资源
        最近更新 更多