1

我正在使用 jquery ui 范围滑块 http://jqueryui.com/slider/#range

  $(function() {
    $( "#slider-range" ).slider({
      range: true,
      min: 0,
      max: 1000,
      values: [ 75, 300 ],
      slide: function( event, ui ) {
        $( "#amount" ).val( "" + ui.values[ 0 ] + " - " + ui.values[ 1 ] );
      }
    });
    $( "#amount" ).val( "" + $( "#slider-range" ).slider( "values", 0 ) +
      " - " + $( "#slider-range" ).slider( "values", 1 ) );
  });

如果我在我的测试页面上使用这个代码,那么它工作正常

但是当我要在magento中使用它时出现错误,因为我也在使用另一个滑块现在我想更改名称,jquery-ui.js以便slider1我可以使用这个滑块

  $(function() {
    $( "#slider-range" ).slider1({
               // ui code
    });

  });

所以我必须做出改变

4

2 回答 2

1

如果其他人有同样的问题,我必须在 jquery ui 之后和 jquery mobile 之前添加下一行

$.fn.uislider = $.fn.slider;

代码示例将是:

<script type="text/javascript"  src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<script>  
    // rename to avoid conflict with jquery mobile
    $.fn.uislider = $.fn.slider;
  </script>
<script src="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.js"></script> 
<script>
  $(function() {
    $( "#slider" ).uislider();
  });
  </script>
于 2013-11-18T05:17:39.167 回答
0

您可以在包含 jQuery UI之后和包含引入冲突方法的模块之前在 jQuery 对象的原型中创建一个新属性:slider()

$.fn.slider1 = $.fn.slider;

但是请注意,这只会重命名附加到原型的桥接方法。该小部件仍将在$.ui.slider后台命名。

于 2013-03-25T13:55:38.203 回答