jQuery許願牆程式碼例項
曾經流行過一段時間的許願牆,形式大家都不會陌生。
下面就通過javascript程式碼實現此功能,程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> body { background: -webkit-linear-gradient(top, rgb(203, 235, 219) 0%, rgb(55, 148, 192) 120%); background: -moz-linear-gradient(top, rgb(203, 235, 219) 0%, rgb(55, 148, 192) 120%); overflow: hidden; font-family: '微軟雅黑', font-size: 16px; height: 1500px; } .item { width: 200px; height: 200px; line-height: 30px; -webkit-border-bottom-left-radius: 20px 500px; -webkit-border-bottom-right-radius: 500px 30px; -webkit-border-top-right-radius: 5px 100px; box-shadow: 0 2px 10px 1px rgba(0, 0, 0, 0.2); -webkit-box-shadow: 0 2px 10px 1px rgba(0, 0, 0, 0.2); -moz-box-shadow: 0 2px 10px 1px rgba(0, 0, 0, 0.2); } #container p { height: 80px; margin: 30px 10px; overflow: hidden; word-wrap: break-word; line-height: 1.5; } #container a { position: relative; left: 150px; color: red; font-size: 14px; } input { display: block; height: 30px; padding: 0 1em; line-height: 30px; width: 300px; margin: 85px auto; font-size: 20px; } </style> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script> (function ($) { var container; // 可選顏色 var colors = ['#96C2F1', '#BBE1F1', '#E3E197', '#F8B3D0', '#FFCC00']; //建立許願頁 var createItem = function (text) { var color = colors[parseInt(Math.random() * 5, 10)] $('<div class="item"><p>' + text + '</p><a href="#">關閉</a></div>').css({ 'background': color }).appendTo(container).drag(); }; // 定義拖拽函式 $.fn.drag = function () { var $this = $(this); var parent = $this.parent(); var pw = parent.width(); var ph = parent.height(); var thisWidth = $this.width() + parseInt($this.css('padding-left'), 10) + parseInt($this.css('padding-right'), 10); var thisHeight = $this.height() + parseInt($this.css('padding-top'), 10) + parseInt($this.css('padding-bottom'), 10); var x, y, positionX, positionY; var isDown = false; var randY = parseInt(Math.random() * (ph - thisHeight), 10); var randX = parseInt(Math.random() * (pw - thisWidth), 10); parent.css({ "position": "relative", "overflow": "hidden" }); $this.css({ "cursor": "move", "position": "absolute" }).css({ top: randY, left: randX }).mousedown(function (e) { parent.children().css({ "zIndex": "0" }); $this.css({ "zIndex": "1" }); isDown = true; x = e.pageX; y = e.pageY; positionX = $this.position().left; positionY = $this.position().top; return false; }); $(document).mouseup(function (e) { isDown = false; }).mousemove(function (e) { var xPage = e.pageX; var moveX = positionX + xPage - x; var yPage = e.pageY; var moveY = positionY + yPage - y; if (isDown == true) { $this.css({ "left": moveX, "top": moveY }); } else { return; } if (moveX < 0) { $this.css({ "left": "0" }); } if (moveX > (pw - thisWidth)) { $this.css({ "left": pw - thisWidth }); } if (moveY < 0) { $this.css({ "top": "0" }); } if (moveY > (ph - thisHeight)) { $this.css({ "top": ph - thisHeight }); } }); }; // 初始化 var init = function () { container = $('#container'); // 繫結關閉事件 container.on('click', 'a', function () { $(this).parent().remove(); }).height(($(window).height() - 200) < 0 ? 520 : ($(window).height() - 200)) .width(($(window).width() - 200) < 0 ? '100%' : $(window).width()); var tests = ['螞蟻部落一', '螞蟻部落二', '螞蟻部落三', '螞蟻部落四', '螞蟻部落五']; $.each(tests, function (i, v) { createItem(v); }); // 繫結輸入框 $('#input').keydown(function (e) { var $this = $(this); if (e.keyCode == '13') { var value = $this.val(); if (value) { createItem(value); $this.val(''); } } }); }; $(function () { init(); }); })(jQuery); </script> </head> <body> <div id="container" style="height:520px;"></div> <input id="input" type="text" placeholder="隨便說說吧..." /> </body> </html>
相關文章
- jQuery is() 程式碼例項jQuery
- jQuery選項卡例項程式碼jQuery
- jQuery操作cookie程式碼例項jQueryCookie
- jQuery 動畫效果程式碼例項jQuery動畫
- jQuery事件冒泡程式碼例項jQuery事件
- jquery 驗證碼效果程式碼例項jQuery
- jQuery.map()方法程式碼例項jQuery
- jQuery阻止事件冒泡程式碼例項jQuery事件
- 阻止jquery事件冒泡程式碼例項jQuery事件
- jquery tip外掛程式碼例項jQuery
- jQuery toggleClass()方法程式碼例項jQuery
- jquery小球碰撞效果程式碼例項jQuery
- jQuery next()方法程式碼例項jQuery
- jQuery操作表格table程式碼例項jQuery
- jQuery阻止事件冒泡例項程式碼jQuery事件
- jQuery清除快取例項程式碼jQuery快取
- jQuery tab選項卡效果程式碼例項jQuery
- jQuery加法驗證碼效果程式碼例項jQuery
- jQuery 隔行變色效果程式碼例項jQuery
- jQuery禁用滑鼠右鍵程式碼例項jQuery
- jQuery解析xml檔案程式碼例項jQueryXML
- jquery防止重複提交程式碼例項jQuery
- jQuery css()函式使用程式碼例項jQueryCSS函式
- jquery刪除指定元素程式碼例項jQuery
- jquery獲取元素高度程式碼例項jQuery
- jquery next()方法使用程式碼例項jQuery
- jQuery ajax請求程式碼例項分享jQuery
- jQuery隔行變色效果程式碼例項jQuery
- jQuery自定義標籤程式碼例項jQuery
- jQuery雪花飄落效果程式碼例項jQuery
- jQuery進度條效果程式碼例項jQuery
- jquery漸隱漸現程式碼例項jQuery
- jQuery瀑布流佈局程式碼例項jQuery
- jQuery手風琴效果程式碼例項jQuery
- jQuery利用name匹配元素程式碼例項jQuery
- jQuery實現的tab選項卡程式碼例項jQuery
- jQuery設定select選中項程式碼例項jQuery
- jquery實現的選項卡效果例項程式碼jQuery