How to handle JavaScript being disabled in AngularJS

17,508

Solution 1

After considering other answers on this question and "How to detect if JavaScript is disabled?" as well as some further research on AngularJS.

First off you will want to hide all variables displayed through the databindings.

This can be done using ng-cloak which is appended to an HTML tag.

<div ng-cloak>
    <!-- page content here -->
    {{bound_data}}
</div>

It also includes a CSS tag to hide that element.

[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
    display: none !important;
}

You will then want alternate content to be displayed for when a user has JavaScript blocked or disabled. This is done using the tag.

<noscript>
    You must have JavaScript enabled to use this app.
</noscript>

You have the choice to create an app with reduced features and functionality or require the visitor to have JavaScript enabled in order to use your app at all.

Solution 2

<NOSCRIPT>
You need Javascript enabled to use this site.
</NOSCRIPT>

http://www.w3.org/TR/html401/interact/scripts.html#h-18.3.1

Share:
17,508
BrightIntelDusk
Author by

BrightIntelDusk

I work as a software Engineer. I enjoy the art of writing code and the science of solving problems through software engineering. I try to be practical and analytical and find the most elegant solution.

Updated on June 02, 2022

Comments

  • BrightIntelDusk
    BrightIntelDusk almost 2 years

    AngularJS is dependent upon JavaScript being enabled. This means that if someone visits an application or website built in AngularJS it will not render properly.

    What are common conventions used to handle visitors with JavaScript disabled when using AngularJS?

    Please explain why this is the case?

    Included in the problem is the case of handling angular JS directives and {{data_bindings}}. So that the data does not show when the page cannot render the page.