UNPKG

jqwidgets-framework

Version:

jQWidgets is an advanced Angular, Vue, Blazor, React, Web Components, jquery, ASP .NET MVC, Custom Elements and HTML5 UI framework.

124 lines (119 loc) 4.57 kB
<!DOCTYPE html> <html lang="en"> <head> <meta name="keywords" content="jqxDragDrop, jQuery Draggable, jQWidgets, Events Demo" /> <meta name="description" content="You can restrict draggables drag area in different ways. In this demo the dragging area of the draggable element is it's parent." /> <title id='Description'>In this demo is demonstrated how to use the jqxDragDrop plug-in events.</title> <link rel="stylesheet" href="../../../jqwidgets/styles/jqx.base.css" type="text/css" /> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> <meta name="viewport" content="width=device-width, initial-scale=1 maximum-scale=1 minimum-scale=1" /> <script type="text/javascript" src="../../../scripts/jquery-1.12.4.min.js"></script> <script type="text/javascript" src="../../../scripts/demos.js"></script> <script type="text/javascript" src="../../../jqwidgets/jqxcore.js"></script> <script type="text/javascript" src="../../../jqwidgets/jqxpanel.js"></script> <script type="text/javascript" src="../../../jqwidgets/jqxscrollbar.js"></script> <script type="text/javascript" src="../../../jqwidgets/jqxbuttons.js"></script> <script type="text/javascript" src="../../../jqwidgets/jqxdragdrop.js"></script> <script type="text/javascript"> $(document).ready(function () { $('#events').jqxPanel({ width: 260, height: 330}); $('#draggable').jqxDragDrop({ restricter: 'parent', dropTarget: '.drop-target' }); $('#draggable').bind('dragStart', function (event) { addEvent(event.type, event.args.position); }); $('#draggable').bind('dragEnd', function (event) { addEvent(event.type, event.args.position); }); $('#draggable').bind('dropTargetEnter', function (event) { addEvent(event.type, event.args.position); }); $('#draggable').bind('dropTargetLeave', function (event) { addEvent(event.type, event.args.position); }); function addEvent(type, position) { $('#events').jqxPanel('prepend', '<div class="row">Event: ' + type + ', (' + position.left + ', ' + position.top + ')</div>' ); } (function centerLabels() { var labels = $('.label'); labels.each(function (index, el) { el = $(el); var top = (el.parent().height() - el.height()) / 2; el.css('top', top + 'px'); }); } ()); }); </script> <style type="text/css"> .row { padding: 1px; } .draggable { border: 1px solid #bbb; background-color: #C9ECFF; width: 100px; height: 100px; left: 30px; top: 50px; padding: 5px; z-index: 2; } #draggable-parent { background-color: #eeffee; width: 350px; height: 350px; text-align: center; border: 1px solid #eee; float: left; } .main-container { width: 650px; z-index: 0; } .events { float: right; padding: 10px; font-family: Tahoma; font-size: 13px; } .label { position: relative; font-family: Verdana; font-size: 11px; color: #000; } .drop-target { background-color: #FBFFB5; width: 150px; height: 150px; border: 1px solid #ddd; margin-left: 190px; margin-top: 70px; z-index: 1; } </style> </head> <body class='default'> <div class="main-container"> <div id="draggable-parent"> <div id="draggable" class="draggable"> <div class="label">I can be dragged only inside my parent</div> </div> <div class="drop-target"><div class="label">I'm a drop target</div></div> </div> <div id="events" class="events"> </div> </div> <div style="position: absolute; bottom: 5px; right: 5px;"> <a href="https://www.jqwidgets.com/" alt="https://www.jqwidgets.com/"><img alt="https://www.jqwidgets.com/" title="https://www.jqwidgets.com/" src="https://www.jqwidgets.com/wp-content/design/i/logo-jqwidgets.png"/></a> </div> </body> </html>