jQuery Mobile - Custom HTML Widget


You can add any HTML to the loader using the data-html attribute.


Following example describes the use of custom html widget in the jQuery Mobile Framework.

<!DOCTYPE html>
      <meta name = "viewport" content = "width = device-width, initial-scale = 1">
      <link rel = "stylesheet" href = "https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
      <script src = "https://code.jquery.com/jquery-1.11.3.min.js"></script>
      <script src = "https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
         $( document ).on( "click", ".load_msg", function() {
            var $this  =  $( this ),
            theme  =  $this.jqmData( "theme" ) || $.mobile.loader.prototype.options.theme,
            msgText  =  $this.jqmData( "msgtext" ) || $.mobile.loader.prototype.options.text,
            textVisible  =  $this.jqmData( "textvisible" ) || $.mobile.loader.prototype.options.textVisible,
            textonly  =  !!$this.jqmData( "textonly" );
            $.mobile.loading( "show", {
               text: msgText,
               textVisible: textVisible,
               theme: theme,
               textonly: textonly
         .on( "click", ".hide_page", function() {
            $.mobile.loading( "hide" );
      <button class = "load_msg" data-theme = "b" data-textonly = "true" 
         data-textvisible = "true" data-msgtext = "This is custom loading..." 
         data-inline = "true" data-html = <span class = "ui-bar  ui-shadow 
         ui-overlay-d ui-corner-all"><img src = "/jquery_mobile/images/img1.png">
         <h2>its loading...</h2></span>This is Custom HTML</button>
      <button class = "hide_page" data-inline = "true" 
         data-icon = "delete">It hides the page</button>


Let's carry out the following steps to see how the above code works −

  • Save the above html code as jqm_custom_html.html file in your server root folder.

  • Open this HTML file as http://localhost/jqm_custom_html.html and the following output will be displayed.

Kickstart Your Career

Get certified by completing the course

Get Started