我遇到了以下问题
我的滑块不再好用而且会出错。这是因为jquery和其他东西的更新。
我的网站上有滑块(抱歉没有图片)。它有滑块和下一个prev按钮。 当我点击滑块或按钮时,前面会出现一张漂亮的幻灯片。
这将以旧方式使用以下代码完成:
initPL_slider = function() {
var steps = Math.ceil(parseInt(pl.total)/parseInt(view[pl.view][0]))-1;
var contentwidth = (parseInt($("#pl_content").innerWidth())+100);
$("#pl_slider").slider({
min: 0,
max: (steps*parseInt(view[pl.view][0])),
handle: ".pl_handle",
step: parseInt(view[pl.view][0]),
change: function(event, ui){
var dir = "";
if(ui.value > pl.limitstart) dir = "-";
pl.limitstart = ui.value;
$("#pl_content").animate({
left: dir+contentwidth+"px",
opacity: 0
}, 250, 'linear', function(){
$("#pl_content").css({left:"0px", opacity:1});
retrieveContent(false);
}
);
}
});
if(steps < 1){
$("#pl_slider").slider("option", "disabled", true );
}
}
setPLmenuData = function(){
var steps = Math.ceil(parseInt(pl.total)/parseInt(view[pl.view][0]))-1;
$("#pl_prev").click(function(){
if(pl.limitstart > 0){
$("#pl_slider").slider("moveTo", "-="+view[pl.view][0]);
}
});
$("#pl_next").click(function(){
if(steps > 0){
if(pl.limitstart < (parseInt(view[pl.view][0])*steps)){
$("#pl_slider").slider("moveTo", "+="+view[pl.view][0]);
}
}
});
使用:
jQuery 1.2.6 - New Wave Javascript
和
jQuery UI Slider 版权所有2008 Paul Bakaus
但现在我得到越来越多错误加载XML数据错误并寻找解决方案。所以我首先更新Jquery和Jquery ui 版本:
<script src="//code.jquery.com/jquery-1.11.3.js"></script>
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
<script src="http://code.jquery.com/ui/1.11.3/jquery-ui.js"></script>
加载XML数据错误的错误消失了,滑块工作正常。问题是next和prev按钮。当我点击时,我收到NaN错误。似乎缺少Limitstart的计算。我将moveTo更改为value,因为不推荐使用moveTo。
链接....&amp; limitstart = NaN&amp; limit = 25和一些新代码(值)
$("#pl_prev").click(function(){
if(pl.limitstart > 0){
$("#pl_slider").slider("value", "-="+view[pl.view][0]);
}
});
$("#pl_next").click(function(){
if(steps > 0){
if(pl.limitstart < (parseInt(view[pl.view][0])*steps)){
$("#pl_slider").slider("value", "+="+view[pl.view][0]);
}
}
});
我迷路了。如何在链接中获得正确的限制开始计算?
答案 0 :(得分:0)
通过更改以下代码解决了问题。
$("#pl_prev").click(function(){
if(pl.limitstart > 0){
$("#pl_slider").slider("value", "-="+view[pl.view][0]);
}
});
$("#pl_next").click(function(){
if(steps > 0){
if(pl.limitstart < (parseInt(view[pl.view][0])*steps)){
$("#pl_slider").slider("value", "+="+view[pl.view][0]);
}
}
});
到
$("#pl_prev").click(function(){
if(pl.limitstart > 0){
var curr = $("#pl_slider").slider("value");
var thisHandle = view[pl.view][0];
$("#pl_slider").slider( "value", curr - thisHandle);
}
});
$("#pl_next").click(function(){
if(steps > 0){
if(pl.limitstart < (parseInt(view[pl.view][0])*steps)){
var curr = $("#pl_slider").slider("value");
var thisHandle2 = view[pl.view][0];
$("#pl_slider").slider("value", curr + thisHandle2);
}
}
});
滑块值代码未完成。自从jQuery UI 1.7 删除了startValue和moveTo,转而使用值和值选项和方法。