Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.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 角度材质1/md虚拟重复选择滚动_Javascript_Angularjs_Scroll_Scrollbar_Angular Material - Fatal编程技术网

Javascript 角度材质1/md虚拟重复选择滚动

Javascript 角度材质1/md虚拟重复选择滚动,javascript,angularjs,scroll,scrollbar,angular-material,Javascript,Angularjs,Scroll,Scrollbar,Angular Material,将md virtual repeat的滚动更改为从其他滚动查看事件的正确方法是什么 我试过一些手动触发 我读了这篇文章,但这并不完全是我想要的 那么,有没有一种方法可以选择一个scrool到虚拟重复容器 编辑2 我需要将虚拟重复的滚动条更改为主体的滚动条 实例 (函数(){ "严格使用",; var-app=angular.module('MyApp',['ngMaterial','ngMessages']); app.filter('to_trusted',['$sce',函数($sce){

将md virtual repeat的滚动更改为从其他滚动查看事件的正确方法是什么

我试过一些手动触发

我读了这篇文章,但这并不完全是我想要的

那么,有没有一种方法可以选择一个scrool到虚拟重复容器

编辑2

我需要将虚拟重复的滚动条更改为主体的滚动条

实例
(函数(){
"严格使用",;
var-app=angular.module('MyApp',['ngMaterial','ngMessages']);
app.filter('to_trusted',['$sce',函数($sce){
返回函数(文本){
返回$sce.trustAsHtml(文本);
};
}]);
app.controller('AppCtrl',函数($timeout){
该项目的规模=529.39;
var DynamicItems=函数(){
this.loadedPages={};
this.numItems=0;
本页尺寸=50;
this.fetchNumItems_u3;();
};
DynamicItems.prototype.getItemAtIndex=函数(索引){
var pageNumber=数学楼层(索引/此页面大小);
var page=this.loadedPages[pageNumber];
若有(第页){
返回页面[索引%this.page_SIZE];
}else if(第!==null页){
this.fetchPage(页码);
}
};
DynamicItems.prototype.getLength=函数(){
返回此.numItems;
};
DynamicItems.prototype.fetchPage=函数(页码){
this.loadedPages[pageNumber]=null;
$timeout(angular.noop,300){
此.loadedPages[pageNumber]=[];
var pageOffset=pageNumber*this.PAGE\u大小;
//控制台日志(页码);
对于(var i=pageOffset;i
.virtualRepeatDemeDeferredLoading#垂直容器{
宽度:100%;
}
.VirtualRepeatDemoferredLoading。重复项{
边框底部:1px实心#ddd;
框大小:边框框;
填充顶部:10px;
}
.virtualRepeatdemoDeferredLoading md内容{
利润率:16px;
}
.VirtualRepeatDermeferredLoading md虚拟重复容器{
边框:实心1px灰色;
}
.virtualRepeatdemoDeferredLoading.md虚拟重复容器.md虚拟重复偏移器div{
左侧填充:16px;
}
.virtualRepeatdemoHorizontalUsage#水平容器{
高度:100px;
宽度:100%;
}
.virtualRepeatdemoHorizontalUsage.重复项{
右边框:1px实心#ddd;
框大小:边框框;
显示:内联块;
高度:84px;
填充顶部:10px;
文本对齐:居中;
宽度:100px;
}
.virtualRepeatdemoHorizontalUsage md内容{
利润率:16px;
}
.virtualRepeatdemoHorizontalUsage md虚拟重复容器{
边框:实心1px灰色;
}

虚拟重复试验

Adı:{{item.name}
Soyadı:{{{item.姓氏}
Yaţ:{{item.age}
单击:{{item.Clicked}
状态:{{item.status}

清单项目

如果我正确理解了您的问题,您只想在页面的其他地方使用滚动条滚动虚拟中继器div?一种方法是创建一个指令,监听要用作可见滚动条的div的scroll事件,然后将另一个div滚动相同的百分比

这里有一条这样的指令。将其添加到md virtual repeat容器,并将其指向要滚动的div。潜水艇甚至可以有不同的高度

更新 我更改了指令,使其在未指定元素时返回到body标记

app=angular.module('myApp',['ngMaterial']);
app.controller(“myController”,函数($scope){
$scope.items=[];
对于(变量i=0;i<5000000;i++){
$scope.items.push(i);
}
});
应用程序指令(“scrollFrom”,函数($window,$document){
返回{
范围:{
elTarget:“@scrollFrom”
},
链接:函数(范围、元素、属性){
var body=$document[0]。body;
元素(scope.elTarget | |$window).bind(“滚动”,函数(){
var percentScrolled=scope.elTarget?
this.scrollHeight>0?this.scrollTop/