jQuery making custom right-click context menu example

jQuery making custom right-click context menu example

jQuery making custom right-click context menu example

contextmenu() is a basically javascript event handler that is used to bind an event handler to the "contextmenu".

There are many plugins available to use context menu to define custom right click functionality but in this post i will tell you how you can create your own right click functionality using context menu.

Here we will create window like context menu where you can perform many events like edit, update, delele, share, view etc.

Context menu will work on right click mouse operation on selected element.

Positioning of context menu is very important and i will write script to resolve issue of Positioning.

Everyone want it to appear right next to where they clicked.

Let's start to create custom menu on right click :

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1">
  7. <title>jQuery- making custom right-click context menu example</title>
  8. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.5.0/css/font-awesome.min.css">
  9. <!-- Styles -->
  10. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/css/bootstrap.min.css">
  11. <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.3/jquery.min.js"></script>
  12. </head>
  13. <body>
  14. <div class="container" oncontextmenu ="event.preventDefault();$('#context-menu').show();$('#context-menu').offset({'top':mouseY,'left':mouseX})">
  15. <table class="table table-bordered">
  16. <tr>
  17. <th>Name</th>
  18. <th>Details</th>
  19. </tr>
  20. <tr>
  21. <td>Expert PHP</td>
  22. <td>Provide Online tutorials</td>
  23. </tr>
  24. </table>
  25. </div>
  26. <div class="context-menu" id="context-menu" style="display:none;position:absolute;z-index:99">
  27. <ul>
  28. <li><a href="#"><i class="fa fa-eye"></i> View</a></li>
  29. <li><a href="#"><i class="fa fa-share-alt"></i> Share</a></li>
  30. <li><a href="#"><i class="fa fa-trash"></i> Delete</a></li>
  31. <li><a href="#"><i class="fa fa-share fa-fw"></i> Move</a></li>
  32. <li><a href="#"><i class="fa fa-files-o"></i> Copy</a></li>
  33. </ul>
  34. </div>
  35. </body>
  36. </head>
  37. </html>
Add script for Positioning and hide context menu
  1. <script>
  2.     var mouseX;
  3.     var mouseY;
  4.     $(document).mousemove(function(e) {
  5.      mouseX = e.pageX;
  6.      mouseY = e.pageY;
  7.     });
  8.     $(document).bind("mousedown", function (e) {
  9. // If the clicked element is not the menu
  10. if (!$(e.target).parents(".context-menu").length > 0) {
  11. // Hide it
  12. $(".context-menu").hide(100);
  13. }
  14. });
  15. </script>
Add style to context menu
  1. <style>
  2. /*right click*/
  3. .context-menu ul{
  4. z-index: 1000;
  5. position: absolute;
  6. overflow: hidden;
  7. border: 1px solid #CCC;
  8. white-space: nowrap;
  9. font-family: sans-serif;
  10. background: #FFF;
  11. color: #333;
  12. border-radius: 5px;
  13. padding: 0;
  14. }
  15. /* Each of the items in the list */
  16. .context-menu ul li {
  17. padding: 8px 12px;
  18. cursor: pointer;
  19. list-style-type: none;
  20. }
  21. .context-menu ul li:hover {
  22. background-color: #DEF;
  23. }
  24. </style>

Phone: (+91) 8800417876
Noida, 201301
Attention Required! | Cloudflare

Sorry, you have been blocked

You are unable to access ressim.net

Why have I been blocked?

This website is using a security service to protect itself from online attacks. The action you just performed triggered the security solution. There are several actions that could trigger this block including submitting a certain word or phrase, a SQL command or malformed data.

What can I do to resolve this?

You can email the site owner to let them know you were blocked. Please include what you were doing when this page came up and the Cloudflare Ray ID found at the bottom of this page.