Floating help

Adds a small help widget that can be triggered on click.

How to implement

Add a div with the classes floating-help-container wrapper between the main element and the footer element. This can remain on the page at all times without affecting the rest of the layout.

Add the help text using the markup shown below (basically a master div with any number of detail divs).

Call UCASDesignFramework.floatingHelp.init() or UCASDesignFramework.bus.publish('df.floatingHelp.init') to initialise and UCASDesignFramework.floatingHelp.destroy() or UCASDesignFramework.bus.publish('df.floatingHelp.destroy') to clean up after removing your help.

Updating existing elements with new content

The most straight-forward way is to remove the .floating-help element, call UCASDesignFramework.floatingHelp.destroy(), add the new .floating-help element and call UCASDesignFramework.floatingHelp.init().

Alternatively, you can call UCASDesignFramework.floatingHelp.closeAndReset(), update the relevant content, and then call UCASDesignFramework.floatingHelp.refresh().

<!-- START floating help component -->
<!-- NOTE TO DEVELOPERS -->
<!-- The buttons don't need to exist: they will be added by the Design Framework on init of the floatingHelp component. -->
<!-- The buttons will have events added by the Design Framework on init of the floatingHelp component. -->
<div class="floating-help" data-floating-help-trigger-label="Help" data-floating-help-back-label="Back">
  <div class="floating-help__master">
    <h2 class="font-chain">Need some help?</h2>
    <div class="content-section content-section--snug">
      <h3 class="font-foot">Questions from this page that you might need help with:</h3>
      <ul>
        <li><a href="#floating-help-lorem" class="floating-help__anchor">Help for lorem</a></li>
        <li><a href="#floating-help-ipsum" class="floating-help__anchor">Help for ipsum</a></li>
        <li><a href="#floating-help-dolor" class="floating-help__anchor">Help for dolor</a></li>
      </ul>
    </div>
    <div class="content-section content-section--snug">
      <h3 class="font-foot">Need some more general help with your application?</h3>
      <p><a href="https://www.ucas.com/undergraduate/applying-university/filling-your-ucas-undergraduate-application" target="_blank" class="ext">Guide to completing your UCAS application</a></p>
    </div>
  </div>
  <div class="floating-help__detail" id="floating-help-lorem">
    <h3 class="font-chain">Help for lorem</h3>
    Aut enim architecto voluptatem accusamus libero enim sed ut iure…
  </div>
  <div class="floating-help__detail" id="floating-help-ipsum">
    <h3 class="font-chain">Help for ipsum</h3>
    Quia quasi magni dolores quaerat quo illum et…
  </div>
  <div class="floating-help__detail" id="floating-help-dolor">
    <h3 class="font-chain">Help for dolor</h3>
    Quis et ipsam nemo officiis vel temporibus…
  </div>
</div>
<!-- END floating help component -->

Example code to test the init and destroy functions

Run the following code in the console to test.

// The following lines will remove the example help and run the destroy function.
var floatingHelp = document.querySelector('.floating-help')
floatingHelp.parentElement.removeChild(floatingHelp)
UCASDesignFramework.floatingHelp.destroy()
// These lines add the help back and run the init function.
document.querySelector('.floating-help-container').appendChild(floatingHelp)
UCASDesignFramework.floatingHelp.init()

Need some help?

Questions from this page that you might need help with:

Need some more general help with your application?

Guide to completing your UCAS application

Help for lorem

Laudantium voluptate qui sed pariatur. aliquam labore vero odit doloremque nihil. ipsam velit quas molestiae a enim expedita nesciunt odit rem ratione ut incidunt necessitatibus sed. perspiciatis eum voluptas alias Nostrum adipisci amet quis perferendis earum quis sint dolorum voluptatem eum et ab. beatae ab culpa accusantium ratione dolores tempora excepturi. sint aut minus optio ut consectetur ut neque. consequuntur aspernatur dicta architecto officiis occaecati molestiae libero quam veniam labore non sint. ut inventore repudiandae culpa reiciendis est quam nam accusantium beatae culpa numquam. consequatur nemo in enim accusantium odio ut officiis unde Repudiandae consequatur illum fugit voluptatibus et nisi. mollitia aut provident sit eos fugiat. magni libero perferendis soluta est tenetur aspernatur ratione perspiciatis mollitia ea mollitia repellendus error. soluta est tempora deserunt minus perspiciatis maxime necessitatibus et temporibus blanditiis. quo omnis quasi impedit et et modi aperiam similique ut saepe vel dolore et voluptatem. sit eveniet ea rerum nemo tempora beatae cumque doloremque qui qui. repellat dolores nihil cupiditate Quos omnis temporibus fuga temporibus velit rerum repellendus error. unde nemo temporibus et nulla fugit porro est necessitatibus molestias in deserunt sed quas. odit voluptatem et excepturi consequatur delectus accusantium rem reprehenderit reprehenderit libero quae impedit ea doloribus. reiciendis aut sequi animi voluptatem. doloribus corporis autem occaecati incidunt a

Help for ipsum

Omnis iure rerum non totam rerum itaque a quasi maxime rem odit eaque aut. consequatur sapiente aperiam excepturi autem omnis tenetur perferendis. molestiae sit quidem accusantium alias omnis. quidem iure non voluptates fugit quia perferendis eaque expedita mollitia aut omnis iusto. alias est illum tempore adipisci asperiores. delectus nam aperiam esse dolore laudantium maxime et. officiis nihil dolorum velit aliquid consequatur ratione est aut Voluptas est dolores et necessitatibus quod excepturi velit molestiae quae iure quia perspiciatis. magni quis nihil dolor voluptas nisi. corrupti aliquam autem ut distinctio perspiciatis ad inventore explicabo quam quaerat Reprehenderit asperiores delectus neque neque doloribus dolores omnis quia voluptatem nesciunt odit saepe ipsam. commodi adipisci est culpa sapiente nihil iusto nostrum eligendi rerum dignissimos consequatur facere adipisci laboriosam. non consequatur ut natus quo qui voluptatem quae. voluptatem voluptas eveniet soluta hic nemo delectus ut. optio rerum soluta sequi magnam ipsam dicta est consequuntur. libero laboriosam atque vel reprehenderit a inventore ut itaque officia eum Sequi aut quas occaecati adipisci ullam eum vero autem. quo occaecati tempora minima quo fugiat porro soluta accusamus numquam magnam. rem exercitationem et ea atque non similique et nesciunt reiciendis. beatae rerum iusto et alias maiores voluptates. quos ipsam et asperiores. voluptas repellendus enim a quibusdam dicta veritatis. voluptas quia laboriosam aut

Help for dolor

Placeat voluptatem aut asperiores vel suscipit et est quia iste voluptatem ullam quasi enim praesentium. iste cumque numquam et reprehenderit accusamus qui aliquam ipsum aut quia. quidem et recusandae rem velit omnis placeat repellendus quia ut possimus. nesciunt sed quia dolorem assumenda facilis corrupti qui soluta placeat autem quisquam explicabo neque error Provident vel consequatur quasi amet earum. ad reiciendis enim et hic enim consequuntur commodi est est inventore at. et est sit impedit quos debitis cumque est maxime distinctio mollitia ratione vel laudantium iusto. totam est doloribus qui voluptatem incidunt accusamus architecto quo velit velit aliquid. adipisci est ab sapiente. qui officiis et est autem et nulla minima ut et libero nemo Enim incidunt vero quod et voluptate voluptatibus consectetur sed dicta fuga qui. distinctio voluptatem corrupti nihil et ut blanditiis modi iste minus praesentium quidem sunt omnis. est ipsa est esse labore quia aliquid et dolor. magnam eligendi et dolor. et neque quia mollitia mollitia eum enim occaecati dignissimos Dolorem sequi consectetur explicabo quidem totam deserunt accusantium deleniti velit labore eius. ut omnis non et commodi sed sunt ipsam nihil eveniet animi ratione facilis. nisi doloribus possimus qui necessitatibus quia. quidem et blanditiis sit voluptatem dolorem eius ut aspernatur qui praesentium quam