Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.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 如何在单击一个按钮时在多个div中应用水平滚动?_Javascript_Html_Css_Reactjs_Scroll - Fatal编程技术网

Javascript 如何在单击一个按钮时在多个div中应用水平滚动?

Javascript 如何在单击一个按钮时在多个div中应用水平滚动?,javascript,html,css,reactjs,scroll,Javascript,Html,Css,Reactjs,Scroll,我有10个div块,其中水平滚动是单独的。我试图实现的是创建一个按钮,在该按钮上单击所有10个div将水平滚动到某个限制 下面是我试图克服这个问题的js代码。 我使用SwitchCase来确定单击了哪个按钮。在本例中,我单击了右键,这样就可以执行右边的case,并在其中执行代码 case 'right': if (count == inspectionData.length-1) { alert('No More Data'); return; }

我有10个div块,其中水平滚动是单独的。我试图实现的是创建一个按钮,在该按钮上单击所有10个div将水平滚动到某个限制

下面是我试图克服这个问题的js代码。 我使用SwitchCase来确定单击了哪个按钮。在本例中,我单击了右键,这样就可以执行右边的case,并在其中执行代码

case 'right':
    if (count == inspectionData.length-1) {
        alert('No More Data');
        return;
    }
    this.setState({
        count:count+2
    },()=>{
        var elmnt = document.getElementById("diva"+count);
        elmnt.scrollIntoView();
        var elmnt1 = document.getElementById("divb"+count);
        elmnt1.scrollIntoView();
        var elmnt2 = document.getElementById("divc"+count);
        elmnt2.scrollIntoView();
        var elmnt3 = document.getElementById("divd"+count);
        elmnt3.scrollIntoView();
        var elmnt4 = document.getElementById("dive"+count);
        elmnt4.scrollIntoView();
        var elmnt5 = document.getElementById("divf"+count);
        elmnt5.scrollIntoView();
        var elmnt6 = document.getElementById("divg"+count);
        elmnt6.scrollIntoView();
        var elmnt7 = document.getElementById("divh"+count);
        elmnt7.scrollIntoView();
        var elmnt8 = document.getElementById("divi"+count);
        elmnt8.scrollIntoView();
        var elmnt9 = document.getElementById("divj"+count);
        elmnt9.scrollIntoView();
        var elmnt10 = document.getElementById("divk"+count);
        elmnt10.scrollIntoView();
    })
    break;

请提供任何有用的建议。

因为我看不到您的HTML和CSS代码,所以我不得不想象您需要什么。接下来是我的代码:

让pptoms=Array.from(document.queryselectoral(“.pptom”))
pptoms.map((p)=>{
p、 divs=Array.from(p.queryselectoral(“.box”))
})
让计数=7;
pptoms.map((p)=>{
p、 divs[count]。scrollIntoView();
})
让radios=Array.from(document.querySelectorAll(#controls[name='count']);
无线电地图((r)=>{
r、 addEventListener(“更改”,()=>{
count=parseInt(r.value);
console.log(计数)
pptoms.map((p)=>{
p、 divs[count]。scrollIntoView();
})
})
})
.box{
边框:1px实心;
宽度:5em;
高度:2米;
线高:2米;
文本对齐:居中;
显示:内联块;
}
.container{宽度:50em;}
P.汤姆先生{
宽度:15em;
边框:1px纯红;
溢出:滚动;
边缘:.5em;
}

方框a 0
方框a 1
方框a 2
方框a 3
方框a 4
方框a 5
方框a 6
方框a 7
方框a 8
方框b 0
方框b 1
方框b 2
方框b 3
方框b 4
方框b 5
方框b 6
方框b 7
方框b 8
0
7.
8.

谢谢您这是我问题的正确答案,但是我找到了另一种方法,使用css属性转换,在其中单击右键,我就是translateX(-400px);因此,每次单击数据div都会自动滑动。