Javascript 发出逻辑条件以查找值所在的逻辑集
我们在产品中实现了通用滑块功能。我们需要从URL读取项目索引值,并滚动滑块以显示活动项目 下面的代码逻辑用于显示活动缩略图,为此,我需要将DIV设置为负数左侧 首先,我们从URL散列值(即#slide=7)获取总缩略图项,然后索引活动项。一套至少包含5项。需要将滑块宽度乘以ActiveItemIndex所在的页面集值 Javascript代码-Javascript 发出逻辑条件以查找值所在的逻辑集,javascript,jquery,Javascript,Jquery,我们在产品中实现了通用滑块功能。我们需要从URL读取项目索引值,并滚动滑块以显示活动项目 下面的代码逻辑用于显示活动缩略图,为此,我需要将DIV设置为负数左侧 首先,我们从URL散列值(即#slide=7)获取总缩略图项,然后索引活动项。一套至少包含5项。需要将滑块宽度乘以ActiveItemIndex所在的页面集值 Javascript代码- showActiveThumbnailOnPageLoad : function() { var _this = this, t
showActiveThumbnailOnPageLoad : function() {
var _this = this,
totalThumbnails = $('.slidetabs a').length,
activeItem = window.location.href.split('=')[1],
scrollAmount;
if(activeItem > 5 && activeItem <= 10) {
scrollAmount = '-=' + 772
} else if(activeItem > 10 && activeItem <= 15) {
scrollAmount = '-=' + 772 * 2
} else if(activeItem > 15 && activeItem <= 20) {
scrollAmount = '-=' + 772 * 3
}
$('.slidetabs').stop().animate({
left : scrollAmount
});
}
showActiveThumbnailOnPageLoad:function(){
var_this=这个,
totalThumbnails=$('.slidetabs a')。长度,
activeItem=window.location.href.split('=')[1],
滚动量;
如果(activeItem>5&&activeItem 10&&activeItem 15&&activeItem尝试以下操作:
scrollAmount = '-=' + 772 * ((activeItem - 1) / 5);
编辑(基于和)
为使分区更接近:
scrollAmount = '-=' + 772 * (((activeItem - 1) / 5) >> 0);
或:
试试这个:
scrollAmount = '-=' + 772 * ((activeItem - 1) / 5);
编辑(基于和)
为使分区更接近:
scrollAmount = '-=' + 772 * (((activeItem - 1) / 5) >> 0);
或:
您可以尝试:
scrollAmount = '-=' + 772 * ~~((activeItem - 1) / 5);
您可以尝试:
scrollAmount = '-=' + 772 * ~~((activeItem - 1) / 5);
使用以下命令:
scrollAmount = '-=' + 772 * Math.floor((((activeItem > 0) ? activeItem : 1) - 1) / 5);
使用以下命令:
scrollAmount = '-=' + 772 * Math.floor((((activeItem > 0) ? activeItem : 1) - 1) / 5);
小心:你必须舍入你的除法!@Samuelcailerie:你是对的。我以为activeItem被视为整数,除法结果也会是整数。所以根据这个答案:我应该使用两个选项之一:var num=~~(a/b);var num=(a/b)>>0;我会适当地更新我的答案。小心:你必须舍入除法!@Samuelcailerie:你是对的。我以为activeItem被视为整数,除法结果也会是整数。所以基于这个答案:我应该使用两个选项之一:var num=~~(a/b);var num=(a/b)>>0;我会适当地更新我的答案。如果activeItem===0
(Math.floor(-0.2)
给出-1
),它就不起作用了。是的,你是对的,但我认为至少有5个(+ve no.)页面中的activeItem根据其第一个if条件。但我会根据您的条件对其进行修改。由于存在此条件,activeItem
可能小于5,然后可能等于0…但如果您想避免此情况,可以读取OP的第一个条件,或者使用双位补码…您是对的t、 活动项永远不会是0。谢谢您的帮助,先生。如果activeItem===0
(Math.floor(-0.2)
给出-1
),它将不起作用。是的,您是对的,但我认为至少有5个(+ve no.)页面中的activeItem根据其第一个if条件。但我会根据您的条件对其进行修改。由于存在此条件,activeItem
可能小于5,然后可能等于0…但如果您想避免此情况,可以读取OP的第一个条件,或者使用双位补码…您是对的t、 活动项永远不会为0。感谢您的帮助,先生。今天学习了一个新方面。我不知道双位概念。非常感谢Samuel。@Lokesh,如果您同时学习了一些东西并解决了您的问题,那就太好了!:)今天学到了一个新的方面。我不知道双位的概念。非常感谢塞缪尔。@Lokesh如果你学到了一些东西,同时解决了你的问题,那就太好了!:)