我的第一个问题是他们如何得到这个滚动条?
http://dl.dropbox.com/u/12337149/scrollbar.png
我在几个地方看过它,所以我认为它可能在公共图书馆?我的第二个问题涉及无限滚动本身.我再次在几个网站上看到它,所以它是一种相对常见的技术,并在某处描述?
我正在使用动态网页中的HtmlUnit抓取数据,动态网页使用无限滚动来动态获取数据,就像facebook的新闻源一样.我使用以下句子来模拟向下滚动事件:
webclient.setJavaScriptEnabled(true);
webclient.setAjaxController(new NicelyResynchronizingAjaxController());
ScriptResult sr=myHtmlPage.executeJavaScript("window.scrollBy(0,600)");
webclient.waitForBackgroundJavaScript(10000);
myHtmlPage=(HtmlPage)sr.getNewPage();
Run Code Online (Sandbox Code Playgroud)
但似乎myHtmlPage与前一个保持相同,即myHtmlPage中没有附加新数据,因此我只能抓取网页上的前几个数据.谢谢你的帮助!
我必须在选项卡上加载第一个网格面板,然后使用loadData()函数将数据加载到存储中,该函数工作正常,但现在,我必须将无限网格滚动与它集成.是什么方法在loadData进入商店后将无限滚动整合到飞行中?我正在使用ExtJS 4.1.请帮助我....这里我在控制器和夹具视图面板中显示我当前的脚本,我已经尝试但不工作.
控制器脚本如下:
var c = this.getApplication().getController('Main'),
data = c.generateReportGridConfiguration(response,true),
tabParams = {
title: 'Generated Report',
closable: true,
iconCls: 'view',
widget: 'generatedReportGrid',
layout: 'fit',
gridConfig: data
},
generatedReportGrid = this.addTab(tabParams);
generatedReportGrid.getStore().loadData(data.data);
Run Code Online (Sandbox Code Playgroud)
在上面的脚本中,一旦我获得Ajax调用响应,使用tabParams添加网格面板并使用gridConfig param传递数据,这将为网格设置字段和列,然后最后声明将网格数据提供给网格.我通过以下参考示例尝试了网格面板设置:http: //dev.sencha.com/deploy/ext-4.0.1/examples/grid/infinite-scroll.html
在上面的页面,包含的脚本=> http://dev.sencha.com/deploy/ext-4.0.1/examples/grid/infinite-scroll.js
我的网格面板脚本如下:
Ext.define('ReportsBuilder.view.GeneratedReportGrid', {
extend: 'Ext.grid.Panel',
alias: 'widget.generatedReportGrid',
requires: [
'ReportsBuilder.view.GenerateViewToolbar',
'Ext.grid.*',
'Ext.data.*',
'Ext.util.*',
'Ext.grid.PagingScroller',
'Ext.grid.RowNumberer',
],
initComponent: function() {
Ext.define('Report', {extend: 'Ext.data.Model', fields: this.gridConfig.fields, idProperty: 'rowid'});
var myStore = Ext.create('Ext.data.Store', {model: 'Report', groupField: 'name',
// allow the grid to interact with the …Run Code Online (Sandbox Code Playgroud) 我有一个类似于的代码:
<div id='right-column'>
<div id='results'>
<div id='result1>
<div class='main'></div>
<div class='details'></div>
</div>
<!-- ... -->
<div id='result50>
<div class='main'></div>
<div class='details'></div>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
div.main当用户点击a时,总是可见(固定高度)和div.details"展开/折叠" .div.mainresult div如果#results scrollHeight大于#right-column height,我想创建一个连续的滚动循环.
在这种情况下,滚动过去#result50会显示#result1,滚动之前#result1会显示#result50.
我不能.append()将第一个孩子放在底部,因为在某些情况下,result可以在列的顶部和底部看到一部分a .除非我检测到是否展开/折叠,否则我
无法复制a .当用户展开div 时,a
的高度会发生变化这一事实使得它变得更加复杂......result.detailsresult.details
以下是连续滚动循环(2列)的示例:
$(document).ready(function() {
var num_children = $('#up-left').children().length;
var child_height = $('#up-left').height() / num_children;
var half_way = …Run Code Online (Sandbox Code Playgroud)有没有一种方法可以在网页的开头插入内容,而不会导致页面给人一种向上滚动的印象。
我正在尝试实现类似无限滚动的功能,但我需要能够无限向上和向下滚动(我也在另一端卸载内容,以便滚动条不会变得无限小,应用程序不占用太多内存)。
我很高兴使用 javascript,我宁愿不使用库(我试图保持比这更轻的重量)。
有任何想法吗?
我正在开发一个主要使用的iOS应用程序UITableView.它从服务器检索文章页面.我们有25000篇文章; 所以我实现了一个pull-to-refresh和无限滚动来遍历标题集.下载的内容使用核心数据保留; NSFetchedResultsController用于自动更新UITableView.
但是,我已经实现了无限滚动两个方向; 上和下.由于用户将允许向下滚动25000篇文章标题,因此我必须删除用户已滚动的文章.如果用户向上滚动,我必须重新插入当前标题之上的标题.这样做,我在文章集合中有一个移动的窗口.
我使用部分和标题按日期组显示我的文章.
问题是因为无限滚动是双向的,所以我经常删除或在表格的较高位置添加文章.事实上,我必须改变与之相关的谓词NSFetchedResultsController.
滚动被混乱的结果.我已经让它跳回到它应该是ish的位置.它不是很好,因为它是一个跳跃(动画:NO),如果我把动画打开,它会在回到正确的位置之前四处走动.而且这个位置并不完全是应该的位置.
我不确定我是否解释了我的问题.我认为问题可能在于我使用的方式,UITableView但我不确定如何使用它来使这更好.
干杯
我是一个iOS新手,我想知道如何检测用户何时滚动并到达UITableView的底部,以便我可以将新数据加载到表中.
我还想知道应该在哪里实现这样的方法(tableview的类或存在这个tableview的视图控制器)干杯!
我已经创建了一个简单的应用程序,从中获取图像,然后GridView以无限滚动显示它们.
我的OnScrollListener:
public class BasicOnScrollListener implements AbsListView.OnScrollListener {
private IOnScroll onScroll;
public BasicOnScrollListener(IOnScroll action) {
this.onScroll = action;
}
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
if (firstVisibleItem + visibleItemCount >= totalItemCount - visibleItemCount)
onScroll.onReachedEnd();
}
}
Run Code Online (Sandbox Code Playgroud)
代码可用于数据处理:
private List<Image> images = new ArrayList<>();
....
private void init() {
this.imageAdapter = new ImageAdapter(this, images);
this.gridView.setAdapter(imageAdapter);
populateGridView();
this.gridView.setOnScrollListener(new BasicOnScrollListener(() -> {
populateGridView();
})); …Run Code Online (Sandbox Code Playgroud) 我在我的 flutter 应用程序中使用无限滚动分页插件。我还需要在我的页面中使用 SilverAppBar。这是我的代码:
\nreturn Scaffold(\n body: DefaultTabController(\n length: 2,\n child: NestedScrollView(\n headerSliverBuilder: (context, value) {\n return [\n SliverAppBar(\n bottom: TabBar(\n tabs: [\n Tab(icon: Icon(Icons.call), text: "1"),\n Tab(icon: Icon(Icons.message), text: "2"),\n ],\n ),\n ),\n ];\n },\n body: TabBarView(\n children: [\n const MyListWidget()\n Text(\'2\')\n ],\n ),\n ),\n ),\n);\nRun Code Online (Sandbox Code Playgroud)\n这是我的 MyListWidget:
\nWidget build(BuildContext context) {\nreturn PagedSliverList<int, MyModel>(\n pagingController: _\xd1\x81ontroller,\n builderDelegate: PagedChildBuilderDelegate<MyModel>(\n itemBuilder: (context, item, index) {\n return Text(item.Title);\n },\n ),\n );\n }\nRun Code Online (Sandbox Code Playgroud)\n但我有错误:
\nA RenderRepaintBoundary …Run Code Online (Sandbox Code Playgroud) infinite-scroll ×10
javascript ×5
ios ×2
scroll ×2
ajax ×1
android ×1
dart ×1
extjs ×1
extjs4.1 ×1
facebook ×1
flutter ×1
gridview ×1
htmlunit ×1
java ×1
jquery ×1
meteor ×1
optimization ×1
swift ×1
uitableview ×1
web-crawler ×1