在网页上显示弹出数据的正确方法?

时间:2011-04-02 00:10:04

标签: javascript mootools

我有一个项目列表,我想要显示几个项目,然后是“更多”按钮。我想要更多按钮在弹出框中显示新项目。有很多方法可以完成这项工作,但我想弄清楚什么是最佳实践。

这是我的方法。我们在我们的网站上使用MooTools和Clientcide:

直接在“更多”按钮后面,我包含一个div,其中包含我想要放入弹出窗口的内容(完整列表,包括默认情况下可见的项目的重复),以及包含style“display:none”。

我将一个事件附加到运行名为“popupNext”的脚本的more按钮。 popupNext获取按钮后面的下一个元素(使用mootools中的getNext),并创建一个新的StickyWin(通过Clientcide和stickywin.ui),并将该元素作为其内容。然后(这是感觉特别hacky的部分)它从内容元素中删除包含“display:none”样式的类。

最后,我使用element.store()(来自mooTools)将StickyWin(使用键“win”)存储在event元素中。我忽略了上面提到的:当popupNext运行时,它首先通过element.retrieve()检查是否存在StickyWin,如果存在则显示它。

这一切看起来还不错,我猜 - 最大的缺点是页面臃肿 - 虽然我只显示每个列表的前几个元素,但是每个页面可能会有更多但是从未见过。但我很好奇是否有一些更好,更标准的方法。例如,我可以通过ajax检索元素来减少膨胀,但代价是当用户想要查看完整列表时响应速度较慢。

1 个答案:

答案 0 :(得分:0)

查看StickyWin.Ajax - 它似乎比普通的StickyWin更接近你需要的东西。