jQuery Mobile Data 属性

jQuery Mobile 的 data-* 属性 是它的灵魂!
它让你几乎不用写 CSS 和 JS,就能做出一个看起来像原生 App 的移动网页。下面是截至 2025 年依然最全、最实用的 jQuery Mobile data-* 属性速查表 + 实战技巧(基于 1.4.5,最稳定版)。

一、核心全局 data-*(最常用 Top 10)

属性可选值作用说明推荐指数
data-role="page"定义一个页面(必须)★★★★★
data-role="header"固定顶部栏★★★★★
data-role="content"主要内容区域(可省略)★★★★
data-role="footer"固定底部栏★★★★★
data-role="listview"自动美化 ul/li 为列表★★★★★
data-role="button"a/input/button 自动变成美观按钮★★★★★
data-theme="a""b"a–z切换主题色(a=黑 b=灰)★★★★★
data-icon="home"20+ 种图标(home, plus, delete…)给按钮加图标★★★★★
data-position="fixed"fixedheader/footer 吸顶吸底★★★★★
data-transition="slide"slide/fade/pop/slidedown…(8种)页面切换动画★★★★★

二、页面专属 data-*(超级好用)

属性可选值说明
data-title="标题"任意文字动态设置浏览器标题和后退按钮文字
data-url="page1"任意字符串自定义 hash,方便 changePage 使用
data-add-back-btn="true"true/false自动添加返回按钮
data-back-btn-text="返回"任意文字自定义返回按钮文字
data-fullscreen="true"true全屏模式(隐藏状态栏,iOS 专用)
data-dialog="true"true以对话框形式打开页面

三、控件专属 data-*(常用 20+)

控件类型属性示例说明
Listviewdata-inset="true"圆角内嵌列表
data-filter="true"自动添加搜索框
data-divider-theme="a"分组标题主题
data-split-icon="delete"每行右侧出现小图标按钮
Buttondata-inline="true"按钮内联(不占整行)
data-corners="false"去掉圆角
data-iconpos="notext"只显示图标不显示文字
Navbardata-role="navbar"底部/顶部选项卡
Collapsibledata-collapsed="false"默认展开
data-collapsed-icon="arrow-d"展开时图标
Sliderdata-highlight="true"轨道高亮
Flip Switchdata-role="flipswitch"滑动开关
Popupdata-role="popup"弹出层
data-overlay-theme="b"背景遮罩主题
data-dismissible="false"点击外面不关闭

四、2025 年实战中最实用的组合写法(直接复制)

<!-- 1. 吸顶吸底 + 返回按钮 + 主题 -->
<div data-role="page" id="home" data-theme="a" data-title="首页">
    <div data-role="header" data-position="fixed" data-add-back-btn="true" data-back-btn-text="返回">
        <h1>我的应用</h1>
    </div>

    <div role="main" class="ui-content">
        <!-- 2. 带搜索 + 分割线 + 右侧删除按钮的列表 -->
        <ul data-role="listview" data-inset="true" data-filter="true" 
            data-filter-placeholder="搜索任务..." data-split-icon="delete" data-split-theme="a">
            <li data-role="list-divider">今天</li>
            <li><a href="#detail">开会讨论需求</a><a href="#">删除</a></li>
            <li><a href="#detail">写代码</a><a href="#">删除</a></li>
        </ul>

        <!-- 3. 按钮组 -->
        <div data-role="controlgroup" data-type="horizontal" class="ui-mini">
            <a href="#" class="ui-btn ui-icon-plus ui-btn-icon-left" data-inline="true">新增</a>
            <a href="#" class="ui-btn ui-icon-refresh ui-btn-icon-left" data-inline="true">刷新</a>
        </div>
    </div>

    <!-- 4. 底部导航栏 -->
    <div data-role="footer" data-position="fixed">
        <div data-role="navbar">
            <ul>
                <li><a href="#home" class="ui-btn-active" data-icon="home">首页</a></li>
                <li><a href="#list" data-icon="grid">列表</a></li>
                <li><a href="#my" data-icon="user">我的</a></li>
            </ul>
        </div>
    </div>
</div>

五、页面切换动画(最全 8 种)

<a href="#page2" data-transition="slide">右滑进入</a>
<a href="#page2" data-transition="slideup">上滑进入</a>
<a href="#page2" data-transition="slidedown">下滑进入</a>
<a href="#page2" data-transition="fade">淡入</a>
<a href="#page2" data-transition="flip">翻转</a>
<a href="#page2" data-transition="turn">翻页</a>
<a href="#page2" data-transition="flow">流动</a>
<a href="#page2" data-transition="pop">弹出</a>
<!-- 反向加 data-direction="reverse" -->
<a href="#page1" data-transition="slide" data-direction="reverse">左滑返回</a>

六、2025 年写 jQuery Mobile 项目必备小技巧

  1. 永远不要忘记这三个属性:
   <meta name="viewport" content="width=device-width, initial-scale=1">
   <div data-role="page">...</div>
   data-position="fixed"
  1. 想让页面切换更快?全局关闭动画:
   $.mobile.defaultPageTransition = "none";
  1. 想改默认主题?全局设置:
   $.mobile.activePageTheme = "b";  // 所有新页面默认用 b 主题
  1. 动态创建控件后必须 refresh:
   $("#mylist").listview("refresh");
   $("#myslider").slider("refresh");

这张表 + 上面实例,足够你 2025 年在任何老项目里横着走了!

需要我给你一个 「jQuery Mobile data-* 属性一页纸速查表(PDF/图片版)」 或者 「100 个经典 data-* 组合模板」,直接告诉我,我立刻打包发你!

文章已创建 2588

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部