Search code examples
javascriptjqueryjquery-uijquery-ui-resizable

Jquery UI resizable handlers


I am using jQuery UI resizable and I want to have a title for each handler.

Like if I an hovering on 'east -handler' then a tooltip should appear saying 'that move to the right'. I was trying to do with jQuery attr() but not able to do so. Any help is appreciated. And one more thing I am having more than one element on which I am applying resizable method so all should get the same "title".

$(document).ready(function() {
  $('.ui-icon-gripsmall-diagonal-e').each(function() {
    $(this).attr('title', 'hello');
  });
});

<html lang="en">

<head>
  <meta charset="utf-8">
  <title>jQuery UI Resizable functionality</title>
  <link href="https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel="stylesheet">
  <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
  <script src="https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>

  <!-- CSS -->
  <style>
    #resizable {
      width: 150px;
      height: 150px;
      padding: 0.5em;
      text-align: center;
      margin: 0;
    }
  </style>

  <!-- Javascript -->
  <script>
    $(function() {
      $("#resizable").resizable();
    });
  </script>
</head>

<body>
  <!-- HTML -->
  <div id="resizable" class="ui-widget-content">
    <h3 class="ui-widget-header">Pull my edges to resize me!!</h3>
  </div>
</body>

</html>


Solution

  • You need to run your code after you initialise the plugin. Like this:

    <html lang="en">
    
    <head>
      <meta charset="utf-8">
      <title>jQuery UI Resizable functionality</title>
      <link href="https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel="stylesheet">
      <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
      <script src="https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
    
      <!-- CSS -->
      <style>
        #resizable {
          width: 150px;
          height: 150px;
          padding: 0.5em;
          text-align: center;
          margin: 0;
        }
      </style>
    
      <!-- Javascript -->
      <script>
        $(function() {
          $("#resizable").
            resizable().
            find('.ui-resizable-se').attr('title', 'hello');
        });
      </script>
    </head>
    
    <body>
      <!-- HTML -->
      <div id="resizable" class="ui-widget-content">
        <h3 class="ui-widget-header">Pull my edges to resize me!!</h3>
      </div>
    </body>
    
    </html>

    enter image description here