0

我正在使用 jQuery Mobile 和 PhoneGap 开发我们的移动应用程序。我们的每个主页都会有一个列表视图,用于显示各种类型的数据。如果应用程序在平板电脑上运行,或者在屏幕大于特定宽度的横向视图中运行,我希望列表视图的 data-inset 属性设置为 true,并以圆角和边框呈现。如果它在预定义宽度以下的较小屏幕上,我希望它没有 inset 属性。

在我的函数中,我做了这样的事情来设置 data-inset 属性:

var list = $("#testlist");
list.data("inset", true);
list.listview("refresh",true);

但是,这不会更新列表。它保持格式化以适应屏幕的整个宽度。我应该如何实现这个目标?我考虑过手动添加样式,但我不仅必须将其添加到列表中,而且还必须将每个列表项添加到列表中。有没有办法可以切换 data-inset 属性并触发框架重新设置它的样式?

这是一个半工作的 jsFiddle,它模仿了我正在尝试做的事情:http: //jsfiddle.net/GQgV9/12/

4

1 回答 1

1

没有文明的方法可以做到这一点。刷新只会更新小部件的内部。为了使列表插入,您必须:

  1. <ul>, .ieui-listview-insetui-corner-all.
  2. 通过设置inset选项.listview('option', 'inset', true)
  3. 刷新小部件,否则列表项将没有圆角。

这是您的 jsFiddle 的修改版本:http: //jsfiddle.net/GQgV9/13/

于 2013-01-24T20:04:49.793 回答