Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当im位于滑块末端时,如何禁用单击按钮_Javascript_Jquery_Html_Css_Css Transitions - Fatal编程技术网

Javascript 当im位于滑块末端时,如何禁用单击按钮

Javascript 当im位于滑块末端时,如何禁用单击按钮,javascript,jquery,html,css,css-transitions,Javascript,Jquery,Html,Css,Css Transitions,这是我的代码,如果我在滑块的末端,那么右键应该自动禁用,当我在初始阶段时,同样的事情应该发生,如果我在“区域1”,那么左箭头不起作用,如果我在“区域8”,那么右箭头不起作用 $('.rightArrow')。单击(函数(事件){ $('.box').animate({'left':“-=200px”}); }); $('.leftArrow')。单击(函数(){ $('.box').animate({'left':“+=200px”}); }); .mainRow::-webkit滚动条{ 宽

这是我的代码,如果我在滑块的末端,那么右键应该自动禁用,当我在初始阶段时,同样的事情应该发生,如果我在“区域1”,那么左箭头不起作用,如果我在“区域8”,那么右箭头不起作用

$('.rightArrow')。单击(函数(事件){
$('.box').animate({'left':“-=200px”});
});
$('.leftArrow')。单击(函数(){
$('.box').animate({'left':“+=200px”});
});
.mainRow::-webkit滚动条{
宽度:0px;/*删除滚动条空间*/
高度:0px;
}
.mainRow::-webkit滚动条拇指{
宽度:0px;
高度:0px;
}
.包装纸{
位置:相对位置;
}
梅恩罗先生{
溢出-x:滚动!重要;
边界塌陷:分离;
边框间距:5px0px;
}
.盒子{
背景:红色;
高度:100px;
最小宽度:200px;
最大宽度:200px;
显示:表格单元格;
动画:slideBox.5s;
动画填充模式:正向;
位置:相对位置;
}
.箭头{
位置:绝对位置;
宽度:100%;
排名:0;
}
.左箭头{
位置:绝对位置;
左:-50px;
顶部:20px;
字体大小:40px;
}
.右箭头{
位置:绝对位置;
右:-50px;
顶部:20px;
字体大小:40px;
}

区域1
区域2
区域3
区域4
区域5
第6区
第7区
第8区
已修复

如果您计划更改正在使用的幻灯片数量,这可能不是最好的解决方案(但在这种情况下,您必须计算剩余的
最大值,以检查是否要继续)

在更改位置之前,添加对
position()的检查。左

var truePosition = $('.box').position().left;
$('.rightArrow').click(function(event) {
    if(truePosition > -1415){
        truePosition -= 205;
        $('.box').animate({'left' : "-=205px"});
    }
});
$('.leftArrow').click(function() {
    if(truePosition < 20){
        truePosition += 205;
        $('.box').animate({'left' : "+=205px"});
    }
});
var truePosition=$('.box').position().left;
$('.rightArrow')。单击(函数(事件){
如果(truePosition>-1415){
真位置-=205;
$('.box').animate({'left':“-=205px”});
}
});
$('.leftArrow')。单击(函数(){
如果(真实位置<20){
真位置+=205;
$('.box').animate({'left':“+=205px”});
}
});
检查固定的工作示例

如果您计划更改正在使用的幻灯片数量,这可能不是最好的解决方案(但在这种情况下,您必须计算剩余的
最大值,以检查是否要继续)

在更改位置之前,添加对
position()的检查。左

var truePosition = $('.box').position().left;
$('.rightArrow').click(function(event) {
    if(truePosition > -1415){
        truePosition -= 205;
        $('.box').animate({'left' : "-=205px"});
    }
});
$('.leftArrow').click(function() {
    if(truePosition < 20){
        truePosition += 205;
        $('.box').animate({'left' : "+=205px"});
    }
});
var truePosition=$('.box').position().left;
$('.rightArrow')。单击(函数(事件){
如果(truePosition>-1415){
真位置-=205;
$('.box').animate({'left':“-=205px”});
}
});
$('.leftArrow')。单击(函数(){
如果(真实位置<20){
真位置+=205;
$('.box').animate({'left':“+=205px”});
}
});

检查

上的一个工作示例这里有一个可供任意数量幻灯片使用的小提琴。单击向右箭头直到结束,然后查看发生了什么

注意:按钮仅在最后一张幻灯片完全可见时隐藏,因此您可能需要修改滑块以始终移动整个幻灯片

编辑:现在应该适用于左按钮

$('.rightArrow')。单击(函数(事件){
$('.box').animate({'left':“-=200px”});
if($('.box').last().isFullyVisible()){
$(this.hide();
}
$('.leftArrow').show();
});
$('.leftArrow')。单击(函数(){
$('.box').animate({'left':“+=200px”});
if($('.box').first().isFullyVisible()){
$(this.hide();
}
$('.rightArrow').show();
});
$(函数(){
if($('.box').first().isFullyVisible()){
$('.leftArrow').hide();
}
});
jQuery.fn.isFullyVisible=函数(){
var win=$(窗口);
变量视口={
top:win.scrollTop(),
左:win.scrollLeft()
};
viewport.right=viewport.left+win.width();
viewport.bottom=viewport.top+win.height();
var elemtHeight=this.height();
elemtHeight=数学圆(elemtHeight);
var bounds=this.offset();
bounds.top=bounds.top+元素高度;
bounds.right=bounds.left+this.outerWidth();
bounds.bottom=bounds.top+this.outerHeight();
返回(!(viewport.rightbounds.right | | viewport.bottombounds.bottom));
}
正文{
保证金:0;
填充:0;
}
.mainRow::-webkit滚动条{
宽度:0px;/*删除滚动条空间*/
高度:0px;
}
.mainRow::-webkit滚动条拇指{
宽度:0px;
高度:0px;
}
.包装纸{
位置:相对位置;
}
梅恩罗先生{
溢出-x:滚动!重要;
边界塌陷:分离;
边框间距:5px0px;
}
.盒子{
背景:ddd;
高度:100px;
最小宽度:200px;
最大宽度:200px;
显示:表格单元格;
动画:slideBox.5s;
动画填充模式:正向;
位置:相对位置;
}
.箭头{
位置:绝对位置;
宽度:100%;
排名:0;
}
.左箭头{
位置:绝对位置;
左:0px;
顶部:20px;
字体大小:40px;
}
.右箭头{
位置:绝对位置;
右:0px;
顶部:20px;
字体大小:40px;
}

区域1
区域2
区域3
区域4
区域5
第6区
第7区
第8区

这是一把可以放任意数量幻灯片的小提琴。单击向右箭头直到结束,然后查看发生了什么

注意:按钮仅在最后一张幻灯片完全可见时隐藏,因此您可能需要修改滑块以始终移动整个幻灯片

编辑:现在应该适用于左按钮

$('.rightArrow')。单击(函数(事件){
$('.box').animate({'left':“-=200px”});
如果($('.box').last().isFully