- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我有一个网络界面(在一个大型网络应用程序中),允许用户在两个非常大的列表之间建立联系。
列表 A - 40,000 多个项目
列表 B - 1,000 多个项目
列表 C - 包含 b 中的项目列表,这些项目连接到列表 A 中的选定项目
这是粗略的 jsfiddle当前行为减去数据库的 ajax 更新。
这是主要功能(只在这里是因为堆栈溢出需要 jsfiddle 链接的代码片段)。
$('.name-listb input').add('.name-listc input').click(function (e) {
var lista_id = $('.name-lista input:checked').val();
var listb_id = $(this).val();
var operation = $(this).prop('checked') ? 'create' : 'delete';
var $listb = $('.name-listb .checkbox-list');
var $listc = $('.name-listc .checkbox-list');
if (operation == 'create') {
$listb.find('input[value=' + listb_id + ']').prop('checked', true);
// Ajax request to add checked item.
$new_item = $listb.find('input[value=' + listb_id + ']').parents('.option-group').clone();
$listc.append($new_item);
} else if (operation == 'delete') {
console.log('hello list delete');
$listb.find('input[value=' + listb_id + ']').prop('checked', false);
// Ajax request to remove checked item.
$listc.find('input[value=' + listb_id + ']').parents('.option-group').remove();
}
});
要求不允许我使用自动完成字段或寻呼机。但是当前页面加载时间太长(1 到 5 秒之间,具体取决于缓存)。此外,JS 行为附加到所有 40k+ 项目,这将导致性能较低的计算机出现问题(在新的 200 美元消费者特价中测试,计算机被 JS 瘫痪)。还有(不是在 JS fiddle 上,而是在最终产品上)一个过滤器,它根据文本输入过滤列表。
处理这种情况的好策略是什么?
我的第一个想法是创建一种文档 View 架构。一个 JavaScript 列表,当用户滚动时将项目添加到顶部和底部,并在列表达到特定大小时将项目从另一端转储。为了过滤,我会转储整个列表并获得一个新的过滤项目列表,如自动完成,但它可以使用 ajax 滚动和添加项目。但这是非常复杂的。我希望有人可能有更好的主意或已经使用这种方法的 jquery 插件。
Lista 固定为 70KListb 是用户生成的,范围在 1k-70k 之间。这就是说,仅仅通过使用委托(delegate)的出色反馈来优化 JS(这将使生活变得更加精彩 10 倍)是不够的。还是需要限制可见列表。
最佳答案
我之前在很多项目中都遇到过这个问题,一种既易于实现又性能良好的解决方案是使用类似 Infinity.js 的方法。 .
简而言之,Infinity 与许多其他“无限滚动” 库一样,允许您只渲染应该可见(或应该很快可见)的实际列表的一小部分,从而减少压力在浏览器上非常棒。你可以看到一个简单的现场演示 over here ,检查 API 引用的第一个链接。
关于javascript - 在没有寻呼机的情况下处理网站上的大型列表的好策略是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32232875/
我需要能够垂直翻转一组图像。我看过使用 ViewPager,但它似乎只支持水平分页。 我也查看了 Gallery,但我也没有看到垂直分页的方法。无论如何,它已被弃用,取而代之的是 Horizont
我正在使用寻呼机中内置的 View ,并且希望有一个“显示全部”选项。即显示全部 第 2 页,共 10 页。 实现这一目标的最佳方法是什么? 史蒂夫 最佳答案 史蒂文,您可以克隆您的实际显示,然后在
当我使用 vim 编辑 Markdown 文件时,我有很好的语法着色(通过 vim-markdown 和 vim-markdown-preview 插件)。 当我使用 less(寻呼机)查看文件时,我
在我的 Android 应用程序中,我已经能够在一段时间后自动滚动查看寻呼机。我找不到显示滚动发生前剩余时间的寻呼机指示器。 我在下面附上了一个网站的屏幕截图,以了解我想要实现的目标。 如果您可以共享
当您编写的每个代码都立即运行并且您未按时完成计划时,您是否知道这种感觉:-P 就像'哦,是的,现在我有时间让它变得完美'。这就是我现在的位置^^ 所以我用 JSF (ui:repeat) 实现了一个转
我在 Android 应用程序中有一个项目列表,我希望每个项目都在一个页面上。问题是每个项目都设置了一个带有 imageview 的布局,它从一个唯一的 url 下载它的图像。这有可能实现吗?如何实现
我想同步两个 View 寻呼机之间的触摸事件。我已经试过了,但没有发现任何效果。 viewPager.setOnTouchListener(new View.OnTouchListener() {
我必须构建具有无限自动滚动功能的 View 寻呼机。我还需要在 View 寻呼机下方显示一个页面指示器,它应该根据滚动事件做出响应。目前我已经为无限自动滚动应用了以下逻辑: public void s
我正在尝试按照一些教程使用 View 寻呼机创建一个自动图像 slider 。我让一切正常,但后来我看到了 编舞:跳过 1 帧!应用程序可能在其主线程上做了太多工作。 并搜索了错误。` 你看,在我的代
如何从viewpager的第0个index跳转到view pager的最后一个index?那就是如何让view pager循环呢?如果用户向左滑动,我想跳转到最后一个索引;如果用户向右滑动,我想从最后
我在一个 iOS 应用程序上工作,它从服务器获取视频和图像,每个对象都有很多图像和视频,我需要在 slider (寻呼机)中显示这些图像和视频,用户可以在其中滑动以获取下一个,并且我需要将这些视频和图
我们目前正在使用 VS 2008 C# 开发 Windows 窗体应用程序。此应用程序用于阅读长(200 - 300 页)的法律文件,它处理大约 30 - 40 个文档。应用程序在文档文本中搜索,在文
我正在开发一个项目,其中我在一个屏幕上使用 View Pager,如下所示: 但是你可以在那里看到,有一个上层布局,其中列出了根据显示的页面选择的年份。当我们滑动 View 寻呼机时,年份也会根据显示
我需要在带有图像的 View 寻呼机文件中获取页面指示器。这是我的代码。 public class IndicatorActivity extends Activity { /** Called w
有没有办法用代表每张幻灯片的单词替换寻呼机中 slider 的圆圈(就像可单击的菜单,滑动其下方的内容)?选项在这里http://bxslider.com/options但不确定哪一个可以实现这一目标
ViewPager 叠加在 fab 之上。如何将 fab 放在首位? xml: 或者也许这不是原因?当我在上面时,只是没有按下按钮,但选项卡被翻转。 最佳答案 Coordinat
我正在尝试实现一个垂直可滑动的ViewPager,它有一堆卡片,就像外观一样。 我能够使用 ViewPager.PageTransformer 并交换触摸点来实现 VerticalViewPager。
我无法以编程方式创建和添加 View 寻呼机。 我找到了这个问题Android create ViewPager programmatically但接受的答案对我不起作用。 相关代码如下。
我有一个 View 寻呼机,其中每个页面都是一个自定义 View ( ... 而不是 Fragment ),我正在使用 LayoutInflator 进行扩充。 .每个自定义 View 都有一个 Im
我已经使用 jQuery 设置了一个动画 slider : jsFiddle 演示:http://jsfiddle.net/neal_fletcher/9zRDV/ 原因是我想在幻灯片上实现轻微的悬垂
我是一名优秀的程序员,十分优秀!