dropdown.html 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>镜像站@通用下拉菜单 - 在线演示 - Layui</title>
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  9. <meta name="apple-mobile-web-app-status-bar-style" content="black">
  10. <meta name="apple-mobile-web-app-capable" content="yes">
  11. <meta name="format-detection" content="telephone=no">
  12. <script>
  13. ;!function(){self!==parent&&(location.href="http://www.baidu.com/")}();
  14. </script>
  15. <link rel="stylesheet" href="/public/layui/dist/css/layui.css" tppabs="http://res.layui.com/layui/dist/css/layui.css?t=1632428048260" media="all">
  16. <link rel="stylesheet" href="/public/static/css/global.css" tppabs="http://res.layui.com/static/css/global.css?t=1632428048260-19" media="all">
  17. </head>
  18. <body>
  19. <div class="layui-layout layui-layout-admin">
  20. <div class="layui-header header header-demo" autumn>
  21. <div class="layui-fluid">
  22. <a class="logo" href="../index.html" tppabs="http://www.layui.com/">
  23. <img src="/public/static/images/layui/logo.png" tppabs="http://res.layui.com/static/images/layui/logo.png" alt="layui">
  24. </a>
  25. <div class="layui-form layui-hide-xs component" lay-filter="LAY-site-header-component"></div>
  26. <div class="layui-hide-xs site-notice"></div>
  27. <ul class="layui-nav" id="LAY_NAV_TOP">
  28. <li class="layui-nav-item ">
  29. <a href="../doc/index.html" tppabs="http://www.layui.com/doc/">文档</a>
  30. </li>
  31. <li class="layui-nav-item layui-this">
  32. <a href="index.html" tppabs="http://www.layui.com/demo/">示例</a>
  33. </li>
  34. <li class="layui-nav-item">
  35. <a href="javascript:;">
  36. <!--<span class="layui-badge-dot" style="left:0; right: auto; margin: -4px 0 0 5px;"></span>-->
  37. 周边
  38. </a>
  39. <dl class="layui-nav-child layui-nav-child-c">
  40. <dd class="layui-hide-sm layui-show-xs" lay-unselect>
  41. <a href="https://gitee.com/sentsin/layui/issues" target="_blank" rel="nofollow">问题反馈</a>
  42. <hr>
  43. </dd>
  44. <dd lay-unselect><a href="../alone.html" tppabs="http://www.layui.com/alone.html" target="_blank" lay-unselect>独立组件</a></dd>
  45. <dd lay-unselect><a href="../../fly.layui.com/extend/index.html" target="_blank">扩展组件</a></dd>
  46. </dl>
  47. </li>
  48. <li class="layui-nav-item layui-hide-xs">
  49. <a href="http://gitee.com/sentsin/layui/issues" target="_blank" rel="nofollow">反馈</a>
  50. </li>
  51. </ul>
  52. </div>
  53. </div>
  54. <!-- 让IE8/9支持媒体查询,从而兼容栅格 -->
  55. <!--[if lt IE 9]>
  56. <script src="../../other/html5shiv/r29/html5.min.js" tppabs="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
  57. <script src="../../other/respond.js/1.4.2/respond.min.js" tppabs="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
  58. <![endif]-->
  59. <div class="layui-side layui-bg-black">
  60. <div class="layui-side-scroll">
  61. <ul class="layui-nav layui-nav-tree site-demo-nav">
  62. <li class="layui-nav-item layui-nav-itemed">
  63. <a class="javascript:;" href="javascript:;">演示</a>
  64. <dl class="layui-nav-child">
  65. <dd>
  66. <a href="index.html" tppabs="http://www.layui.com/demo/">调试预览</a>
  67. </dd>
  68. </dl>
  69. </li>
  70. <li class="layui-nav-item layui-nav-itemed">
  71. <a class="javascript:;" href="javascript:;">布局</a>
  72. <dl class="layui-nav-child">
  73. <dd class="">
  74. <a href="grid.html" tppabs="http://www.layui.com/demo/grid.html">栅格</a>
  75. </dd>
  76. <dd class="">
  77. <a href="admin.html" tppabs="http://www.layui.com/demo/admin.html">框架</a>
  78. </dd>
  79. </dl>
  80. </li>
  81. <li class="layui-nav-item layui-nav-itemed">
  82. <a class="javascript:;" href="javascript:;">基本元素</a>
  83. <dl class="layui-nav-child">
  84. <dd class="">
  85. <a href="button.html" tppabs="http://www.layui.com/demo/button.html">按钮</a>
  86. </dd>
  87. <dd class="">
  88. <a href="form.html" tppabs="http://www.layui.com/demo/form.html">表单</a>
  89. </dd>
  90. <dd class="">
  91. <a href="nav.html" tppabs="http://www.layui.com/demo/nav.html">导航 / 面包屑</a>
  92. </dd>
  93. <dd class="">
  94. <a href="menu.html" tppabs="http://www.layui.com/demo/menu.html">基础菜单</a>
  95. </dd>
  96. <dd class="">
  97. <a href="tab.html" tppabs="http://www.layui.com/demo/tab.html">选项卡</a>
  98. </dd>
  99. <dd class="">
  100. <a href="progress.html" tppabs="http://www.layui.com/demo/progress.html">进度条</a>
  101. </dd>
  102. <dd class="">
  103. <a href="panel.html" tppabs="http://www.layui.com/demo/panel.html">面板</a>
  104. </dd>
  105. <dd class="">
  106. <a href="badge.html" tppabs="http://www.layui.com/demo/badge.html">徽章</a>
  107. </dd>
  108. <dd class="">
  109. <a href="timeline.html" tppabs="http://www.layui.com/demo/timeline.html">时间线</a>
  110. </dd>
  111. <dd class="">
  112. <a href="table-element.html" tppabs="http://www.layui.com/demo/table-element.html">静态表格</a>
  113. </dd>
  114. <dd class="">
  115. <a href="anim.html" tppabs="http://www.layui.com/demo/anim.html">动画</a>
  116. </dd>
  117. <dd class="">
  118. <a href="auxiliar.html" tppabs="http://www.layui.com/demo/auxiliar.html">辅助元素</a>
  119. </dd>
  120. </dl>
  121. </li>
  122. <li class="layui-nav-item layui-nav-itemed">
  123. <a class="javascript:;" href="javascript:;">组件示例</a>
  124. <dl class="layui-nav-child">
  125. <dd class="">
  126. <a href="layer.html" tppabs="http://www.layui.com/demo/layer.html">
  127. 弹出层
  128. </a>
  129. </dd>
  130. <dd class="">
  131. <a href="laydate.html" tppabs="http://www.layui.com/demo/laydate.html">
  132. 日期与时间选择
  133. </a>
  134. </dd>
  135. <dd class="">
  136. <a href="table.html" tppabs="http://www.layui.com/demo/table.html">
  137. 数据表格
  138. </a>
  139. </dd>
  140. <dd class="">
  141. <a href="laypage.html" tppabs="http://www.layui.com/demo/laypage.html">
  142. 分页
  143. </a>
  144. </dd>
  145. <dd class="layui-this">
  146. <a href="dropdown.html" tppabs="http://www.layui.com/demo/dropdown.html">
  147. 下拉菜单
  148. </a>
  149. </dd>
  150. <dd class="">
  151. <a href="upload.html" tppabs="http://www.layui.com/demo/upload.html">
  152. 文件上传
  153. </a>
  154. </dd>
  155. <dd class="">
  156. <a href="transfer.html" tppabs="http://www.layui.com/demo/transfer.html">
  157. 穿梭框
  158. </a>
  159. </dd>
  160. <dd class="">
  161. <a href="tree.html" tppabs="http://www.layui.com/demo/tree.html">
  162. 树形组件
  163. </a>
  164. </dd>
  165. <dd class="">
  166. <a href="colorpicker.html" tppabs="http://www.layui.com/demo/colorpicker.html">
  167. 颜色选择器
  168. </a>
  169. </dd>
  170. <dd class="">
  171. <a href="slider.html" tppabs="http://www.layui.com/demo/slider.html">
  172. 滑块
  173. </a>
  174. </dd>
  175. <dd class="">
  176. <a href="rate.html" tppabs="http://www.layui.com/demo/rate.html">
  177. 评分
  178. </a>
  179. </dd>
  180. <dd class="">
  181. <a href="carousel.html" tppabs="http://www.layui.com/demo/carousel.html">
  182. 轮播
  183. </a>
  184. </dd>
  185. <dd class="">
  186. <a href="laytpl.html" tppabs="http://www.layui.com/demo/laytpl.html">
  187. 模板引擎
  188. </a>
  189. </dd>
  190. <dd class="">
  191. <a href="layedit.html" tppabs="http://www.layui.com/demo/layedit.html">
  192. 富文本编辑器
  193. </a>
  194. </dd>
  195. <dd class="">
  196. <a href="flow.html" tppabs="http://www.layui.com/demo/flow.html">
  197. 流加载
  198. </a>
  199. </dd>
  200. <dd class="">
  201. <a href="util.html" tppabs="http://www.layui.com/demo/util.html">
  202. 工具模块
  203. </a>
  204. </dd>
  205. <dd class="">
  206. <a href="code.html" tppabs="http://www.layui.com/demo/code.html">
  207. 文本行修饰
  208. </a>
  209. </dd>
  210. </dl>
  211. </li>
  212. <li class="layui-nav-item" style="height: 30px; text-align: center"></li>
  213. </ul>
  214. </div>
  215. </div>
  216. <div class="layui-tab layui-tab-brief" lay-filter="demoTitle">
  217. <ul class="layui-tab-title site-demo-title">
  218. <li class="layui-this">预览</li>
  219. <li>查看代码</li>
  220. <li>帮助</li>
  221. </ul>
  222. <div class="layui-body layui-tab-content site-demo site-demo-body">
  223. <div class="layui-tab-item layui-show">
  224. <div class="layui-main">
  225. <div id="LAY_preview">
  226. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  227. <legend>初演示</legend>
  228. </fieldset>
  229. <div class="layui-btn-container">
  230. <button class="layui-btn demo1">
  231. 下拉菜单
  232. <i class="layui-icon layui-icon-down layui-font-12"></i>
  233. </button>
  234. <button class="layui-btn layui-btn-primary demo1">
  235. 下拉菜单
  236. <i class="layui-icon layui-icon-down layui-font-12"></i>
  237. </button>
  238. </div>
  239. <div class="layui-inline" style="width: 235px;">
  240. <input name="" placeholder="在输入框提供一些常用的选项" class="layui-input" id="demo2">
  241. </div>
  242. <div class="layui-inline layui-word-aux layui-font-gray">
  243. 可以绑定任意元素,<a href="javascript:;" class="layui-font-blue" id="demo3">比如这段文字 <i class="layui-icon layui-font-12 layui-icon-down"></i></a>
  244. </div>
  245. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  246. <legend>高级演示</legend>
  247. </fieldset>
  248. <div class="layui-btn-container">
  249. <button class="layui-btn" id="demo100">
  250. 无限层级 + 跳转 + 事件 + 自定义模板
  251. </button>
  252. </div>
  253. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  254. <legend>在表格中的应用</legend>
  255. </fieldset>
  256. <div style="max-width: 728px;">
  257. <table class="layui-hide" id="test-dropdown-table" lay-filter="test-dropdown-table"></table>
  258. </div>
  259. <script type="text/html" id="test-dropdown-toolbar-barDemo">
  260. <a class="layui-btn layui-btn-xs layui-btn-primary" lay-event="edit">编辑</a>
  261. <a class="layui-btn layui-btn-xs" lay-event="more">更多 <i class="layui-icon layui-icon-down"></i></a>
  262. </script>
  263. <div style="margin-top: 15px">
  264. <!-- 示例-970 -->
  265. </div>
  266. <fieldset class="layui-elem-field layui-field-title">
  267. <legend>自定义事件</legend>
  268. </fieldset>
  269. <div class="layui-btn-container">
  270. <button class="layui-btn layui-btn-primary" id="demo4">
  271. hover
  272. <i class="layui-icon layui-icon-more-vertical layui-font-12"></i>
  273. </button>
  274. <button class="layui-btn layui-btn-primary" id="demo5">
  275. mousedown
  276. <i class="layui-icon layui-icon-down layui-font-12"></i>
  277. </button>
  278. <button class="layui-btn layui-btn-primary" id="demo6">
  279. dblclick - 双击
  280. <i class="layui-icon layui-icon-circle layui-font-12"></i>
  281. </button>
  282. </div>
  283. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  284. <legend>右键菜单</legend>
  285. </fieldset>
  286. <div class="layui-bg-gray" style="height: 260px; text-align: center;" id="demo7">
  287. <span class="layui-font-gray" style="position: relative; top:50%;">在此区域单击鼠标右键</span>
  288. </div>
  289. <button class="layui-btn" style="margin-top: 15px;" lay-demoActive="rightclick">
  290. 开启全局右键菜单
  291. </button>
  292. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  293. <legend>弹出位置</legend>
  294. </fieldset>
  295. <div class="layui-btn-container">
  296. <button class="layui-btn layui-btn-primary" id="demo200">
  297. 左对齐
  298. <i class="layui-icon layui-icon-down layui-font-12"></i>
  299. </button>
  300. <button class="layui-btn layui-btn-primary" id="demo201">
  301. 居中对齐
  302. <i class="layui-icon layui-icon-down layui-font-12"></i>
  303. </button>
  304. <button class="layui-btn layui-btn-primary" id="demo202">
  305. 右对齐
  306. <i class="layui-icon layui-icon-down layui-font-12"></i>
  307. </button>
  308. </div>
  309. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  310. <legend>重定义风格</legend>
  311. </fieldset>
  312. <div class="layui-btn-container">
  313. <button class="layui-btn" id="demo8">
  314. 重定义样式
  315. <i class="layui-icon layui-icon-list layui-font-14"></i>
  316. </button>
  317. <style>
  318. .site-dropdown-demo,
  319. .site-dropdown-demo .layui-menu{background-color: #000; border: none;}
  320. .site-dropdown-demo .layui-menu li{color: #fff;}
  321. .site-dropdown-demo .layui-menu li:hover{background-color: #333;}
  322. </style>
  323. <button class="layui-btn" id="demo9">
  324. 重定义内容
  325. <i class="layui-icon layui-icon-list layui-font-14"></i>
  326. </button>
  327. </div>
  328. </div>
  329. <blockquote class="layui-elem-quote" style="margin-top: 30px;">
  330. 更多我们未能呈现的示例,还有待您在阅读文档、以及不断使用的过程,去深入挖掘。
  331. </blockquote>
  332. <div style="margin: 15px 0 100px; padding-bottom: 100px;">
  333. </div>
  334. </div>
  335. </div>
  336. <div class="layui-tab-item">
  337. <textarea class="layui-border-box site-demo-text site-demo-code" id="LAY_democode" spellcheck="false" readonly>
  338. <!DOCTYPE html>
  339. <html>
  340. <head>
  341. <meta charset="utf-8">
  342. <title>镜像站@Layui</title>
  343. <meta name="renderer" content="webkit">
  344. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  345. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  346. <link rel="stylesheet" href="/public/layui/dist/css/layui.css" tppabs="http://res.layui.com/layui/dist/css/layui.css" media="all">
  347. <!-- 注意:如果你直接复制所有代码到本地,上述css路径需要改成你本地的 -->
  348. </head>
  349. </textarea>
  350. </div>
  351. <div class="layui-tab-item">
  352. <div class="layui-main">
  353. <p></p>
  354. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 50px;">
  355. <legend>相关</legend>
  356. </fieldset>
  357. <a class="layui-btn layui-btn-normal" href="../doc/modules/dropdown.html" tppabs="http://www.layui.com/doc/modules/dropdown.html" target="_blank">下拉菜单文档</a>
  358. </div>
  359. </div>
  360. </div>
  361. </div>
  362. <div class="layui-footer footer footer-demo">
  363. <p>
  364. Copyright &copy; 2021 <a href="../index.html" tppabs="http://www.layui.com/">「本站仅为 layui 文档保留的镜像站点,与官方无关」</a> MIT Licensed</p>
  365. <p>
  366. <a href="../about/disclaimer.html" tppabs="http://www.layui.com/about/disclaimer.html" target="_blank">免责声明</a>
  367. <a href="../about/relatedlinks.html" tppabs="http://www.layui.com/about/relatedlinks.html" target="_blank">友链</a>
  368. <a href="javascript:;" site-event="weixinmp">公众号</a>
  369. <a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=00000000000000" rel="nofollow">
  370. <img src="/public/upload/2021_8/168_1628847893037_87773.png" tppabs="http://cdn.layui.com/upload/2021_8/168_1628847893037_87773.png">
  371. 公网安备 00000000000000号
  372. </a>
  373. <a href="https://beian.miit.gov.cn/" target="_blank" rel="nofollow">ICP备00000000号</a>
  374. </p>
  375. <div class="site-union">
  376. <p class="site-union-desc">
  377. <span>
  378. </span>
  379. </p>
  380. </div>
  381. </div>
  382. <script>
  383. window.global = {
  384. pageType: 'demo'
  385. ,preview: function(){
  386. var preview = document.getElementById('LAY_preview');
  387. return preview ? preview.innerHTML : '';
  388. }()
  389. };
  390. </script>
  391. <div class="site-tree-mobile layui-hide">
  392. <i class="layui-icon layui-icon-spread-left"></i>
  393. </div>
  394. <div class="site-mobile-shade"></div>
  395. <script src="/public/layui/dist/layui.js" tppabs="http://res.layui.com/layui/dist/layui.js?t=1632428048260" charset="utf-8"></script>
  396. <script>
  397. layui.config({
  398. base: '/public/static/lay/modules/layui/'
  399. ,version: '1632428048260'
  400. }).use('global');
  401. </script>
  402. </div>
  403. <div id="LAY_democodejs">
  404. <script>
  405. layui.use(['dropdown', 'util', 'layer', 'table'], function(){
  406. var dropdown = layui.dropdown
  407. ,util = layui.util
  408. ,layer = layui.layer
  409. ,table = layui.table
  410. ,$ = layui.jquery;
  411. //初演示
  412. dropdown.render({
  413. elem: '.demo1'
  414. ,data: [{
  415. title: 'menu item11'
  416. ,id: 100
  417. },{
  418. title: 'menu item22'
  419. ,id: 101
  420. },{
  421. title: 'menu item33'
  422. ,id: 102
  423. }]
  424. ,click: function(obj){
  425. layer.tips('点击了:'+ obj.title, this.elem, {tips: [1, '#5FB878']})
  426. }
  427. });
  428. //初演示 - 绑定输入框
  429. dropdown.render({
  430. elem: '#demo2'
  431. ,data: [{
  432. title: 'menu item 1'
  433. ,id: 101
  434. },{
  435. title: 'menu item 2'
  436. ,id: 102
  437. },{
  438. title: 'menu item 3'
  439. ,id: 103
  440. },{
  441. title: 'menu item 4'
  442. ,id: 104
  443. },{
  444. title: 'menu item 5'
  445. ,id: 105
  446. },{
  447. title: 'menu item 6'
  448. ,id: 106
  449. }]
  450. ,click: function(obj){
  451. this.elem.val(obj.title);
  452. }
  453. ,style: 'width: 235px;'
  454. });
  455. //初演示 - 绑定文字
  456. dropdown.render({
  457. elem: '#demo3'
  458. ,data: [{
  459. title: 'menu item 1'
  460. ,id: 100
  461. },{
  462. title: 'menu item 2'
  463. ,id: 101
  464. ,child: [{ //横向子菜单
  465. title: 'menu item 2-1'
  466. ,id: 1011
  467. },{
  468. title: 'menu item 2-2'
  469. ,id: 1012
  470. }]
  471. },{
  472. title: 'menu item 3'
  473. ,id: 102
  474. },{
  475. type: '-' //分割线
  476. },{
  477. title: 'menu group'
  478. ,id: 103
  479. ,type: 'group' //纵向菜单组
  480. ,child: [{
  481. title: 'menu item 4-1'
  482. ,id: 1031
  483. },{
  484. title: 'menu item 4-2'
  485. ,id: 1032
  486. }]
  487. },{
  488. type: '-' //分割线
  489. },{
  490. title: 'menu item 5'
  491. ,id: 104
  492. },{
  493. title: 'menu item 5'
  494. ,id: 104
  495. }]
  496. ,click: function(obj){
  497. this.elem.val(obj.title);
  498. }
  499. });
  500. //高级演示 - 各种组合
  501. dropdown.render({
  502. elem: '#demo100'
  503. ,data: [{
  504. title: 'menu item 1'
  505. ,templet: '<i class="layui-icon layui-icon-picture"></i> {{d.title}} <span class="layui-badge-dot"></span>'
  506. ,id: 100
  507. ,href: '#'
  508. },{
  509. title: 'menu item 2'
  510. ,templet: '<img src="http://cdn.layui.com/avatar/168.jpg?t=123" style="width: 16px;"> {{d.title}}'
  511. ,id: 101
  512. ,href: '/'
  513. ,target: '_blank'
  514. }
  515. ,{type: '-'} //分割线
  516. ,{
  517. title: 'menu item 3'
  518. ,id: 102
  519. ,type: 'group'
  520. ,child: [{
  521. title: 'menu item 3-1'
  522. ,id: 103
  523. },{
  524. title: 'menu item 3-2'
  525. ,id: 104
  526. ,child: [{
  527. title: 'menu item 3-2-1'
  528. ,id: 105
  529. },{
  530. title: 'menu item 3-2-2'
  531. ,id: 11
  532. ,type: 'group'
  533. ,child: [{
  534. title: 'menu item 3-2-2-1'
  535. ,id: 111
  536. },{
  537. title: 'menu item 3-2-2-2'
  538. ,id: 1111
  539. }]
  540. },{
  541. title: 'menu item 3-2-3'
  542. ,id: 11111
  543. }]
  544. },{
  545. title: 'menu item 3-3'
  546. ,id: 111111
  547. ,type: 'group'
  548. ,child: [{
  549. title: 'menu item 3-3-1'
  550. ,id: 22
  551. },{
  552. title: 'menu item 3-3-2'
  553. ,id: 222
  554. ,child: [{
  555. title: 'menu item 3-3-2-1'
  556. ,id: 2222
  557. },{
  558. title: 'menu item 3-3-2-2'
  559. ,id: 22222
  560. },{
  561. title: 'menu item 3-3-2-3'
  562. ,id: 2222222
  563. }]
  564. },{
  565. title: 'menu item 3-3-3'
  566. ,id: 333
  567. }]
  568. }]
  569. }
  570. ,{type: '-'}
  571. ,{
  572. title: 'menu item 4'
  573. ,id: 4
  574. },{
  575. title: 'menu item 5'
  576. ,id: 5
  577. ,child: [{
  578. title: 'menu item 5-1'
  579. ,id: 55
  580. ,child: [{
  581. title: 'menu item 5-1-1'
  582. ,id: 5555
  583. },{
  584. title: 'menu item 5-1-2'
  585. ,id: 55555
  586. },{
  587. title: 'menu item 5-1-3'
  588. ,id: 555555
  589. }]
  590. },{
  591. title: 'menu item 5-2'
  592. ,id: 52
  593. },{
  594. title: 'menu item 5-3'
  595. ,id: 53
  596. }]
  597. },{type:'-'},{
  598. title: 'menu item 6'
  599. ,id: 66
  600. ,type: 'group'
  601. ,isSpreadItem: false
  602. ,child: [{
  603. title: 'menu item 6-1'
  604. ,id: 666
  605. },{
  606. title: 'menu item 6-2'
  607. ,id: 6666
  608. },{
  609. title: 'menu item 6-3'
  610. ,id: 66666
  611. }]
  612. }]
  613. ,click: function(item){
  614. layer.msg(util.escape(JSON.stringify(item)));
  615. }
  616. });
  617. // dropdown 在表格中的应用
  618. table.render({
  619. elem: '#test-dropdown-table'
  620. ,url: '../test/table/demo5.json.js'/*tpa=http://www.layui.com/test/table/demo5.json*/
  621. ,title: '用户数据表'
  622. ,cols: [[
  623. {type: 'checkbox', fixed: 'left'}
  624. ,{field:'id', title:'ID', width:80, fixed: 'left', unresize: true, sort: true}
  625. ,{field:'username', title:'用户名', width:120, edit: 'text'}
  626. ,{field:'email', title:'邮箱', minWidth:150}
  627. ,{fixed: 'right', title:'操作', toolbar: '#test-dropdown-toolbar-barDemo', width:150}
  628. ]]
  629. ,limits: [3]
  630. ,page: true
  631. });
  632. //行工具事件
  633. table.on('tool(test-dropdown-table)', function(obj){
  634. var that = this
  635. ,data = obj.data;
  636. if(obj.event === 'edit'){
  637. layer.prompt({
  638. formType: 2
  639. ,value: data.email
  640. }, function(value, index){
  641. obj.update({
  642. email: value
  643. });
  644. layer.close(index);
  645. });
  646. } else if(obj.event === 'more'){
  647. //更多下拉菜单
  648. dropdown.render({
  649. elem: that
  650. ,show: true //外部事件触发即显示
  651. ,data: [{
  652. title: 'item 1'
  653. ,id: 'aaa'
  654. }, {
  655. title: 'item 2'
  656. ,id: 'bbb'
  657. }, {
  658. title: '删除'
  659. ,id: 'del'
  660. }]
  661. ,click: function(data, othis){
  662. //根据 id 做出不同操作
  663. if(data.id === 'del'){
  664. layer.confirm('真的删除行么', function(index){
  665. obj.del();
  666. layer.close(index);
  667. });
  668. } else {
  669. layer.msg('得到表格下拉菜单 id:'+ data.id);
  670. }
  671. }
  672. ,align: 'right' //右对齐弹出(v2.6.8 新增)
  673. ,style: 'box-shadow: 1px 1px 10px rgb(0 0 0 / 12%);' //设置额外样式
  674. });
  675. }
  676. });
  677. //自定义事件 - hover
  678. dropdown.render({
  679. elem: '#demo4'
  680. ,trigger: 'hover'
  681. ,data: [{
  682. title: 'menu item 1'
  683. ,id: 100
  684. },{
  685. title: 'menu item 2'
  686. ,id: 101
  687. },{
  688. title: 'menu item 3'
  689. ,id: 102
  690. }]
  691. });
  692. //自定义事件 - mousedown
  693. dropdown.render({
  694. elem: '#demo5'
  695. ,trigger: 'mousedown'
  696. ,data: [{
  697. title: 'menu item 1'
  698. ,id: 100
  699. },{
  700. title: 'menu item 2'
  701. ,id: 101
  702. },{
  703. title: 'menu item 3'
  704. ,id: 102
  705. }]
  706. });
  707. //自定义事件 - dblclick
  708. dropdown.render({
  709. elem: '#demo6'
  710. ,trigger: 'dblclick'
  711. ,data: [{
  712. title: 'menu item 1'
  713. ,id: 100
  714. },{
  715. title: 'menu item 2'
  716. ,id: 101
  717. },{
  718. title: 'menu item 3'
  719. ,id: 102
  720. }]
  721. });
  722. //右键菜单
  723. var inst = dropdown.render({
  724. elem: '#demo7' //也可绑定到 document,从而重置整个右键
  725. ,trigger: 'contextmenu' //contextmenu
  726. ,isAllowSpread: false //禁止菜单组展开收缩
  727. ,style: 'width: 200px' //定义宽度,默认自适应
  728. ,id: 'test777' //定义唯一索引
  729. ,data: [{
  730. title: 'menu item 1'
  731. ,id: 'test'
  732. }, {
  733. title: 'Printing'
  734. ,id: 'print'
  735. },{
  736. title: 'Reload'
  737. ,id: 'reload'
  738. },{type:'-'},{
  739. title: 'menu item 3'
  740. ,id: '#3'
  741. ,child: [{
  742. title: 'menu item 3-1'
  743. ,id: '#1'
  744. },{
  745. title: 'menu item 3-2'
  746. ,id: '#2'
  747. },{
  748. title: 'menu item 3-3'
  749. ,id: '#3'
  750. }]
  751. },{type:'-'},{
  752. title: 'menu item 4'
  753. ,id: ''
  754. },{
  755. title: 'menu item 5'
  756. ,id: '#1'
  757. },{
  758. title: 'menu item 6'
  759. ,id: '#1'
  760. }]
  761. ,click: function(obj, othis){
  762. if(obj.id === 'test'){
  763. layer.msg('click');
  764. } else if(obj.id === 'print'){
  765. window.print();
  766. } else if(obj.id === 'reload'){
  767. location.reload();
  768. }
  769. }
  770. });
  771. //对齐方式
  772. dropdown.render({
  773. elem: '#demo200'
  774. ,data: [{
  775. title: 'menu item test 111'
  776. ,id: 100
  777. },{
  778. title: 'menu item test 222'
  779. ,id: 101
  780. },{
  781. title: 'menu item test 333'
  782. ,id: 102
  783. }]
  784. });
  785. dropdown.render({
  786. elem: '#demo201'
  787. ,align: 'center' //居中对齐(2.6.8 新增)
  788. ,data: [{
  789. title: 'menu item test 111'
  790. ,id: 100
  791. },{
  792. title: 'menu item test 222'
  793. ,id: 101
  794. },{
  795. title: 'menu item test 333'
  796. ,id: 102
  797. }]
  798. });
  799. dropdown.render({
  800. elem: '#demo202'
  801. ,align: 'right' //右对齐(2.6.8 新增)
  802. ,data: [{
  803. title: 'menu item test 111'
  804. ,id: 100
  805. },{
  806. title: 'menu item test 222'
  807. ,id: 101
  808. },{
  809. title: 'menu item test 333'
  810. ,id: 102
  811. }]
  812. });
  813. //重定义样式
  814. dropdown.render({
  815. elem: '#demo8'
  816. ,data: [{
  817. title: 'menu item 1'
  818. ,id: 100
  819. },{
  820. title: 'menu item 2'
  821. ,id: 101
  822. },{
  823. title: 'menu item 3'
  824. ,id: 103
  825. },{
  826. title: 'menu item 4'
  827. ,id: 104
  828. },{
  829. title: 'menu item 5'
  830. ,id: 105
  831. },{
  832. title: 'menu item 6'
  833. ,id: 106
  834. }]
  835. ,className: 'site-dropdown-demo'
  836. ,ready: function(elemPanel, elem){
  837. layer.msg('定义了一个 className');
  838. }
  839. });
  840. //重定义内容
  841. dropdown.render({
  842. elem: '#demo9'
  843. ,content: ['<div class="layui-tab layui-tab-brief">'
  844. ,'<ul class="layui-tab-title">'
  845. ,'<li class="layui-this">Tab header 1</li>'
  846. ,'<li>Tab header 2</li>'
  847. ,'<li>Tab header 3</li>'
  848. ,'</ul>'
  849. ,'<div class="layui-tab-content">'
  850. ,'<div class="layui-tab-item layui-text layui-show"><p style="padding-bottom: 10px;">在 content 参数中插入任意的 html 内容,可替代默认的下拉菜单。 从而实现更多有趣的弹出内容。</p><p> 是否发现,dropdown 组件不仅仅只是一个下拉菜单或者右键菜单,它能被赋予许多的想象可能。</p></div>'
  851. ,'<div class="layui-tab-item">Tab body 2</div>'
  852. ,'<div class="layui-tab-item">Tab body 3</div>'
  853. ,'</div>'
  854. ,'</div>'].join('')
  855. ,style: 'width: 370px; height: 200px; padding: 0 15px; box-shadow: 1px 1px 30px rgb(0 0 0 / 12%);'
  856. ,ready: function(){
  857. layui.use('element', function(element){
  858. element.render('tab');
  859. });
  860. }
  861. });
  862. //其他操作
  863. util.event('lay-demoactive', {
  864. //全局右键菜单
  865. rightclick: function(othis){
  866. if(!othis.data('open')){
  867. dropdown.reload('test777', {
  868. elem: document //将事件直接绑定到 document
  869. });
  870. layer.msg('已开启全局右键菜单,请尝试在页面任意处单击右键。')
  871. othis.html('取消全局右键菜单');
  872. othis.data('open', true);
  873. } else {
  874. dropdown.reload('test777', {
  875. elem: '#demo7' //重新绑定到指定元素上
  876. });
  877. layer.msg('已取消全局右键菜单,恢复默认右键菜单')
  878. othis.html('开启全局右键菜单');
  879. othis.data('open', false);
  880. }
  881. }
  882. })
  883. });
  884. </script>
  885. </div>
  886. </body>
  887. </html>