JSFiddle - React, Tailwind, and code Playground

HTML

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>panel demo</title>
  <link rel="stylesheet" href="//code.jquery.com/mobile/1.4.0/jquery.mobile-1.4.0.min.css">
  <script src="//code.jquery.com/jquery-1.10.2.min.js"></script>
  <script src="//code.jquery.com/mobile/1.4.0/jquery.mobile-1.4.0.min.js"></script>
  <style>
  .panel-content {
    padding: 1em;
  }
  </style>
</head>
<body>
 
<div data-role="page" id="page1">
  <div data-role="header">
    <h1>jQuery Mobile Example</h1>
  </div>
  <div role="main" class="ui-content">
    <a href="#defaultpanel" data-role="button" data-inline="true" data-icon="bars">Default panel</a>
  </div>
 
  <!-- defaultpanel  -->
  <div data-role="panel" id="defaultpanel" data-theme="b">
 
    <div class="panel-content">
      <h3>Default panel options</h3>
      <p>This panel has all the default options: positioned on the left with the reveal display mode. The panel markup is <em>before</em> the header, content and footer in the source order.</p>
      <p>To close, click off the panel, swipe left or right, hit the Esc key, or use the button below:</p>
      <a href="#demo-links" data-rel="close" data-role="button" data-theme="a" data-icon="delete" data-inline="true">Close panel</a>
    </div><!-- /content wrapper for padding -->
  </div><!-- /defaultpanel -->
</div>
 
</body>
</html>

JavaScript

$("body").on("keyup", function(e){
    if (e.which === 27){
        return false;
    } 
});