9

jQuery mobile 1.2 alpha 引入了 Popups,而它已经有一个类似的小部件,称为 Dialogs。它们在性质上看起来非常相似。

弹出窗口和对话框之间的技术差异是什么?

弹出窗口可以做什么(任何实际用例作为首选示例)对话框是不可能的?

4

2 回答 2

11

他们是完全不同的野兽。以下是我基于我有限的经验的看法。

对话

  • 对话接管页面,它们包含全屏深色背景,以使“对话”看起来已经取代了页面。

  • data-rel="dialog"通过将属性添加到页面锚链接,可以将任何页面呈现为对话框。

  • 与页面一样,您可以通过将data-transition属性添加到链接来在对话框中指定所需的任何页面转换。

  • 可以上链。

弹出窗口

  • 在当前页面中显示,可能更类似于通常称为模式或灯箱的功能。

  • 不能上链。

弹出窗口可能更适合警报、工具提示、小的是/否确定/取消消息、将缩略图弹出到更大的图像、小的 ajax 表单(时事通讯、登录、发表评论)等。当您不想这样做时很有用信息超载页面,并且只想在用户需要或请求时向他们显示某些功能。

另一方面,对话可用于需要传达大量信息(条款和条件接受屏幕等)的情况,或者当您确实想要强调警报、菜单、用户的选择等时。对话有点破坏页面的流动,所以应该更谨慎地使用。

弹出窗口的一个巧妙功能是它们可以用作覆盖面板,可以用来创建从屏幕一侧滑入的菜单,与 Facebook 的 iphone 应用程序中的菜单不太相似。

归根结底,任何一种都可以使用,也没有对错,很大程度上取决于个人喜好,以及您希望应用程序如何运行。

于 2012-08-15T07:30:09.827 回答
4

一个重要的区别是弹出窗口与元素出现在同一页面中,而对话是完全不同的页面并且背景是空白的。

于 2012-08-15T07:55:03.057 回答