Javascript AngularJS指令-将滚动条设置在正确位置
正如在其他帖子中发布的那样,我有这个指令。 我将实现的是,用户向上滚动,战后数据从后端重新加载(在底部的指令中模拟)。 我现在的问题是在重新加载数据并添加到eisting数组之后,如何处理滚动条-如何将滚动条设置到应该的位置(新加载的数据开始的位置) 是否有这样做的可能性或概念Javascript AngularJS指令-将滚动条设置在正确位置,javascript,angularjs,Javascript,Angularjs,正如在其他帖子中发布的那样,我有这个指令。 我将实现的是,用户向上滚动,战后数据从后端重新加载(在底部的指令中模拟)。 我现在的问题是在重新加载数据并添加到eisting数组之后,如何处理滚动条-如何将滚动条设置到应该的位置(新加载的数据开始的位置) 是否有这样做的可能性或概念 (function() { 'use strict'; angular .module('myProject.common') .directive('asScrollTop', asScrollTop
(function() {
'use strict';
angular
.module('myProject.common')
.directive('asScrollTop', asScrollTop);
function asScrollTop() {
var directive = {
restrict: 'A',
scope: { chatMessagesOfUser: '=' },
link: link
};
return directive;
////////////
function link(scope, element, attr) {
console.log(element);
element.on('scroll', function() {
if(element[0].scrollTop <= 0) {
for(var i = 0; i < 10; i++) {
var newChatMessage = {};
newChatMessage.color = '#00ff00';
newChatMessage.confirmation = false;
newChatMessage.id = '57b05e24ce861d23bec293df';
newChatMessage.links = null;
newChatMessage.messageBody = 'das ist die neue message';
newChatMessage.messageUserConnectionId = '57b05e24ce861d23bec293e0';
newChatMessage.name = 'Mag. Testname testname';
newChatMessage.read = true;
newChatMessage.time = '13.08.2016 11:23';
newChatMessage.userCreatedMessageId = '"5589929b887dc1fdb501cdba"';
scope.chatMessagesOfUser.splice(0, 0, newChatMessage);
}
scope.$apply();
}
});
}
}
(函数(){
"严格使用",;
有棱角的
.module('myProject.common'))
.指令(“asScrollTop”,asScrollTop);
函数asScrollTop(){
var指令={
限制:“A”,
作用域:{chatMessagesOfUser:'='},
链接:链接
};
返回指令;
////////////
功能链接(范围、元素、属性){
控制台日志(元素);
元素。on('scroll',function(){
if(元素[0]。scrollTop窗口。scrollTo
是用于将页面滚动到特定位置的javascript函数:
滚动到文档中的特定坐标集
及
例子
您可以使用此功能滚动页面,但前提是您知道新数据的Y位置
也许你应该考虑在你的数据中插入锚标签作为参考代码用于<代码> ScReltoto .< /P> < P> <代码>窗口。ScReltoto <代码>是用于将页面滚动到某个位置的JavaScript函数。
滚动到文档中的特定坐标集
及
例子
您可以使用此功能滚动页面,但前提是您知道新数据的Y位置
也许你应该考虑在你的数据中插入锚标签来用作“代码> ScRelto”的参考点。
如果你能找到新数据加载的位置,你可以使用<代码>窗口.ScReltoto 函数。这个函数允许你编程地滚动到指定的X和Y位置。在加载新数据的位置,您可以使用window.scrollTo
函数。此函数允许您以编程方式滚动到指定的X和Y位置。
window.scrollTo( 0, 1000 );