I wish to disable all page elements upon an action. Like the modal feature that is in the JQuery UI.
Like on an ajax action.. I wish to show a notification and at the same time to enable the modal feature. And after the request, need to re-enable the page elements back.
Is there any option available in core jquery for that or any plugins?
The page elements are not disabled - doing that would be quite tedious - but rather, a semi-transparent
div
is overlayed on top of all other page elements. To do this, you would probably do something likeAnd the CSS:
Then once the action is complete, you simply remove it like this:
No need to include jQuery UI if this is the only thing you need it for.
Try adding a style of "pointer-events: none;" to the body. To remove it use pointer-events: auto;
More info here https://css-tricks.com/almanac/properties/p/pointer-events/ Though there may be issues with earlier browsers not supporting it
I like Jiang's idea but you do not need image with the following overlay style sheet.
One easy way to achieve this is to define a css class like this:
Use jQuery to add this class to an empty div that is the first child of the body element. Remove the class to disable modal mode.
Your notification should have a z-index higher than the z-index of the dark-class. All items that need to be disabled must have a lower z-index.