jQuery移动弹出窗口和对话框

9

jQuery mobile 1.2 alpha引入了弹出窗口,而它已经有一个类似的小部件,称为对话框。它们在性质上都非常相似。

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

弹出窗口可以做什么(最好用实际用例举例),而对话框无法做到?

2个回答

11
它们是两个不同的东西。以下是根据我有限的经验所做出的结论: 对话框
  • 对话框会覆盖整个页面,它们包含一个全屏幕的深色背景,使得“对话框”似乎已经取代了页面。

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

  • 与页面一样,您可以通过向链接添加data-transition属性来指定任何页面转换。

  • 可以链接多个对话框。

弹出窗口
  • 在当前页面内显示,可能更类似于通常称为模态框或灯箱的功能。

  • 无法链接多个弹出窗口。

弹出窗口可能更适合警报、提示、小的是/否、确定/取消消息、将缩略图弹出到更大的图片、小型ajax表单(新闻订阅、登录、发布评论)等。当您不想在页面上过多地显示信息,并且只想在用户需要或请求时向其展示某些功能时,它很有用。
另一方面,对话框可用于需要传达大量信息(例如接受条款和条件的屏幕等)或者当您希望强调警报、菜单、用户选择等时。对话框会打乱页面的流程,因此应更加谨慎地使用。
弹出窗口的一个不错的功能是,它们可以用作覆盖面板,可以用来创建从屏幕侧面滑入的菜单,类似于Facebook iPhone应用程序中的菜单。

说到底,两者都可以使用,而且没有对错之分,很大程度上取决于个人偏好以及你想让应用程序如何流动。


4

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接