jQuery Mobile 主题

jQuery Mobile 的主题系统基于 ThemeRoller 设计,非常强大且易于自定义。它使用一套名为 “Swatch”(色板)的概念,一个主题可以包含多个 Swatch(通常用字母 a–z 表示),默认提供 a(黑色)b(灰色) 两个。

1. 默认内置主题(1.4.x 版本)

jQuery Mobile 1.4.x 自带两个经典 Swatch:

Swatch名称主要颜色适用场景
aBlack深灰/黑色高对比度,常用于主要按钮、头部
bGray浅灰/白色作为辅助色板,列表、内容区域

从 1.4.0 开始,官方还提供了 5 个增强的官方主题包(可直接下载使用):

  • Classic (经典,类似 1.3 风格)
  • Cupertino (iOS 风)
  • Android (类似旧版 Android)
  • Sense (HTC Sense 风格)
  • Windows Phone (Metro 风格)

下载地址(历史存档):http://jquerymobile.com/themeroller/

2. 如何使用主题

<!-- 页面整体使用 swatch a -->
<div data-role="page" data-theme="a">

  <!-- 头部栏使用 swatch b -->
  <div data-role="header" data-theme="b">
    <h1>标题</h1>
  </div>

  <!-- 按钮使用 swatch a -->
  <a href="#" data-role="button" data-theme="a">按钮 A</a>

  <!-- 按钮使用 swatch b -->
  <a href="#" data-role="button" data-theme="b">按钮 B</a>

  <!-- 自定义 swatch(需自己定义) -->
  <a href="#" data-role="button" data-theme="c">自定义按钮</a>
</div>

3. 自己创建自定义主题(推荐方式)

最简单的方法是使用官方 ThemeRoller 在线工具(虽然现在官网已关闭,但还有很多存量镜像可用):

常用可用的 ThemeRoller 镜像(2025 年仍能访问的):

  1. https://themeroller.jquerymobile.com/ (官方备份)
  2. https://jquerymobile.com/themeroller/ (有时能打开)
  3. 国内镜像:https://www.jq22.com/jquery-mobile-themeroller

操作步骤:

  1. 打开 ThemeRoller
  2. 可以选择 A、B、C 三个 Swatch 分别设置颜色
  3. 调整全局配色、圆角、字体、阴影等
  4. 点击 “Download” 下载主题包
  5. 解压后把 themes/your-theme.min.cssthemes/images/ 放入项目
  6. 在页面引入:
<link rel="stylesheet" href="themes/your-theme.min.css" />
<link rel="stylesheet" href="jquery.mobile.structure-1.4.5.min.css" />

4. 手动自定义 Swatch(CSS 方式)

如果你不想用 ThemeRoller,也可以直接写 CSS 添加新 Swatch,例如添加一个红色主题 “e”:

/* Swatch e - 红色主题 */
.ui-bar-e,
.ui-page-theme-e .ui-bar-inherit,
.ui-page-theme-e .ui-body-inherit {
    background: #d9322f;
    border-color: #b0281f;
    color: #fff;
    text-shadow: 0 1px 0 #900;
}

.ui-body-e,
.ui-page-theme-e .ui-body-inherit {
    background: #f9f9f9;
    border-color: #ddd;
    color: #333;
}

: 0 1px 0 #f3f3f3;
}

.ui-btn-up-e,
.ui-btn-hover-e,
.ui-btn-down-e {
    background: #e94542;
    border-color: #c73a37;
    color: #fff;
    text-shadow: 0 1px 0 #b0281f;
}

.ui-btn-active-e,
.ui-page-theme-e .ui-btn-active {
    background: #c73a37 !important;
}

然后在 HTML 中直接使用 data-theme="e" 即可。

5. 推荐的现代替代方案(2025 年建议)

虽然 jQuery Mobile 已经停止维护(最后版本 1.4.5,2014 年),但如果你现在还在用,推荐:

  • 继续使用 ThemeRoller 生成的主题(最兼容)
  • 或者直接迁移到轻量级框架:Framework7、Bootstrap 5 + Mobile 插件、Ionic 等

如果你需要,我可以给你提供一个完整的自定义主题模板(比如企业蓝、暗黑模式、Material Design 风格等),直接复制就能用。需要的话告诉我想要什么颜色风格!

文章已创建 2588

发表回复

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

相关文章

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

返回顶部