jQuery实现影院选座订座效果
网络编程 2021-07-04 14:07www.168986.cn编程入门
这篇文章主要为大家详细介绍了jQuery实现影院选座订座效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
jQuery实现影院选座订座效果,供大家参考,具体内容如下
效果如下
代码如下
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width; initial-scale=1.0"> <title>jQuery影院选座订座效果代码</title> <meta name="keywords" content="jQuery,选座"> <style type="text/css"> .demo { width: 700px; margin: 40px auto 0 auto; min-height: 450px; } @media screen and (max-width: 360px) { .demo { width: 340px } } .front { width: 300px; margin: 5px 32px 45px 32px; background-color: #f0f0f0; color: #666; text-align: center; padding: 3px; border-radius: 5px; } .booking-details { float: right; position: relative; width: 200px; height: 450px; } .booking-details h3 { margin: 5px 5px 0 0; font-size: 16px; } .booking-details p { line-height: 26px; font-size: 16px; color: #999 } .booking-details p span { color: #666 } div.seatCharts-cell { color: #182C4E; height: 25px; width: 25px; line-height: 25px; margin: 3px; float: left; text-align: center; outline: none; font-size: 13px; } div.seatCharts-seat { color: #fff; cursor: pointer; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; } div.seatCharts-row { height: 35px; } div.seatCharts-seat.available { background-color: #B9DEA0; } div.seatCharts-seat.focused { background-color: #76B474; border: none; } div.seatCharts-seat.selected { background-color: #E6CAC4; } div.seatCharts-seat.unavailable { background-color: #472B34; cursor: not-allowed; } div.seatCharts-container { border-right: 1px dotted #adadad; width: 400px; padding: 20px; float: left; } div.seatCharts-legend { padding-left: 0px; position: absolute; bottom: 16px; } ul.seatCharts-legendList { padding-left: 0px; } .seatCharts-legendItem { float: left; width: 90px; margin-: 10px; line-height: 2; } span.seatCharts-legendDescription { margin-left: 5px; line-height: 30px; } .checkout-button { display: block; width: 80px; height: 24px; line-height: 20px; margin: 10px auto; border: 1px solid #999; font-size: 14px; cursor: pointer } #selected-seats { max-height: 150px; overflow-y: auto; overflow-x: none; width: 200px; } #selected-seats li { float: left; width: 72px; height: 26px; line-height: 26px; border: 1px solid #d3d3d3; background: #f7f7f7; margin: 6px; font-size: 14px; font-weight: bold; text-align: center } </style> </head> <body> <div id="main"> <div class="demo"> <div id="seat-map"> <div class="front">屏幕</div> </div> <div class="booking-details"> <p>影片<span>星际穿越</span></p> <p>时间<span>11月14日 21:00</span></p> <p>座位</p> <ul id="selected-seats"></ul> <p>票数<span id="counter">0</span></p> <p>总计<b>¥<span id="total">0</span></b></p> <button class="checkout-button">确定购买</button> <div id="legend"></div> </div> <div style="clear:both"></div> </div> <br /> </div> <script type="text/javascript" src="http://code.jquery./jquery-1.12.1.min.js"></script> <script type="text/javascript" src="jquery.seat-charts.min.js"></script> <script type="text/javascript"> var price = 70; /票价/ $(document).ready(function() { var $cart = $('#selected-seats'), /座位区/ $counter = $('#counter'), /票数/ $total = $('#total'); /总计金额/ var sc = $('#seat-map').seatCharts({ map: [ /座位图/ 'aaaaaaaaaa', 'aaaaaaaaaa', '__________', 'aaaaaaaa__', 'aaaaaaaaaa', 'aaaaaaaaaa', 'aaaaaaaaaa', 'aaaaaaaaaa', 'aaaaaaaaaa', 'aa__aa__aa' ], naming: { : false, getLabel: function(character, row, column) { return column; } }, legend: { /定义图例/ node: $('#legend'), items: [ ['a', 'available', '可选座'], ['a', 'unavailable', '已售出'] ] }, click: function() { /点击事件/ if (this.status() == 'available') { /可选座/ $('<li>' + (this.settings.row + 1) + '排' + this.settings.label + '座</li>') .attr('id', 'cart-item-' + this.settings.id) .data('seatId', this.settings.id) .appendTo($cart); $counter.text(sc.find('selected').length + 1); $total.text(recalculateTotal(sc) + price); return 'selected'; } else if (this.status() == 'selected') { /已选中/ /更新数量/ $counter.text(sc.find('selected').length - 1); /更新总计/ $total.text(recalculateTotal(sc) - price); /删除已预订座位/ $('#cart-item-' + this.settings.id).remove(); /可选座/ return 'available'; } else if (this.status() == 'unavailable') { /已售出/ return 'unavailable'; } else { return this.style(); } } }); /已售出的座位/ sc.get(['1_2', '4_4', '4_5', '6_6', '6_7', '8_5', '8_6', '8_7', '8_8', '10_1', '10_2']).status('unavailable'); }); /计算总金额/ function recalculateTotal(sc) { var total = 0; sc.find('selected').each(function() { total += price; }); return total; } </body> </html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持狼蚁SEO。
编程语言
- 甘肃哪有关键词排名优化购买方式有哪些
- 甘肃SEO如何做网站优化
- 河南seo关键词优化怎么做电话营销
- 北京SEO优化如何做QQ群营销
- 来宾百度关键词排名:提升您网站曝光率的关键
- 卢龙关键词优化:提升您网站排名的策略与技巧
- 山东网站优化的注意事项有哪些
- 四川整站优化怎样提升在搜索引擎中的排名
- 疏附整站优化:提升网站性能与用户体验的全新
- 海南seo主要做什么工作售后服务要做到哪些
- 荣昌百度网站优化:提升您网站的搜索引擎排名
- 河北seo网站排名关键词优化如何做SEO
- 江西优化关键词排名推广售后保障一般有哪些
- 古浪SEO优化:提升你的网站可见性
- 西藏网站排名优化怎么把网站排名在百度首页
- 如何提升阳东百度快照排名:详尽指南