SmartMenus

先进的jQuery网站菜单插件。 移动优先,响应式和可访问的基于列表的网站菜单,可在所有设备上使用。(Advanced jQuery website menu plugin. Mobile first, responsive and accessible list-based website menus that work on all devices.)

Github stars Tracking Chart

SmartMenus jQuery是2001年8月2日发布的最古老的网站菜单脚本的继承者。虽然项目名称保持不变,但jQuery插件是一个从头开始设计和开发的全新的开源脚本。 它的主要目标是创建一个脚本,支持在各种平台和设备(台式机,平板电脑,手机)上运行的同样多种类型的浏览器。

主要功能
  • 针对支持触摸、鼠标或两种输入的移动和桌面浏览器同时进行了优化
  • Section 508 兼容和完全方便的辅助技术,如屏幕阅读器
  • 基于列表(搜索引擎友好)标记 - 可以轻松地从任何类型的数据库生成
  • 完全CSS驱动与完全可自定义的菜单样式
  • 支持同一页面上的无限菜单树和无限子菜单级别
  • 水平或垂直主菜单项排列
  • 支持主菜单的绝对/相对/固定定位
  • 子菜单的从右到左和从下到上的显示是可能的
  • 完全支持RTL文字/网页(例如希伯来语,阿拉伯语)
  • 全窗口大小检测 - 菜单将始终保持在窗口的边界内
  • 支持子菜单的自动可调宽度(包括最小/最大设置)
  • 高级键盘导航支持
  • 紧凑优化代码
  • 包括 SmartMenus jQuery Bootstrap addon
跨浏览器支持

jQuery支持的所有浏览器都完全支持SmartMenus jQuery插件脚本 - 例如:

  • IE 6.0+
  • Firefox 10+
  • Safari 5.0及更高版本
  • Chrome
  • Opera(桌面和手机11.0以上版本)
  • 移动Webkit浏览器

Overview

Name With Ownervadikom/smartmenus
Primary LanguageHTML
Program languageJavaScript (Language Count: 4)
Platform
License:MIT License
Release Count17
Last Release Namev2.0.0-alpha.1 (Posted on 2023-12-29 13:56:35)
First Release Name0.9.0 (Posted on )
Created At2013-06-01 19:24:44
Pushed At2024-04-19 15:02:32
Last Commit At2022-11-03 16:18:36
Stargazers Count593
Watchers Count50
Fork Count164
Commits Count36
Has Issues Enabled
Issues Count118
Issue Open Count19
Pull Requests Count4
Pull Requests Open Count7
Pull Requests Close Count24
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private

SmartMenus

Advanced jQuery website menu plugin. Mobile first, responsive and accessible list-based website menus that work on all devices.
Check out the demo page.

Quick start

  • Download the latest release.
  • Install with Bower: bower install smartmenus.
  • Install with npm: npm install smartmenus.
  • Clone the repo: git clone https://github.com/vadikom/smartmenus.git.

Check out the project documentation for quick setup instructions, API reference, tutorials and more.

Addons usage as modules

If you need to use any of the addons from the "addons" directory as an AMD or CommonJS module:

AMD

Make sure your SmartMenus jQuery plugin module is named smartmenus since the addons require that name. For example, in RequireJS you may need to add this in your config:

requirejs.config({
  "paths": {
    'smartmenus': 'jquery.smartmenus.min'
  }
  // ...

CommonJS (npm)

The addons are available as separate npm packages so you could properly install/require them in your project in addition to jquery and smartmenus:

  • Bootstrap 4 Addon: npm install smartmenus-bootstrap-4

  • Bootstrap Addon: npm install smartmenus-bootstrap

  • Keyboard Addon: npm install smartmenus-keyboard

Example with npm + Browserify

package.json:

{
  "name": "myapp-using-smartmenus",
  "version": "1.0.0",
  "license": "MIT",
  "dependencies": {
    "jquery": ">=2.1.3",
    "smartmenus": ">=1.1.0",
    "smartmenus-keyboard": ">=0.4.0"
  },
  "devDependencies": {
    "browserify": ">=9.0.3"
  }
}

entry.js:

var jQuery = require('jquery');
require('smartmenus');
require('smartmenus-keyboard');

jQuery(function() {
  jQuery('#main-menu').smartmenus();
});

Run browserify to create bundle.js: browserify entry.js > bundle.js

Homepage

http://www.smartmenus.org/

Documentation

http://www.smartmenus.org/docs/

Community and support

Bugs and issues

For bugs and issues only please. For support requests please use the Community forums or contact us directly via our Premium support.

https://github.com/vadikom/smartmenus/issues

To the top