javascript in cms
Ik zit met een "dilemma". Ik ga een cms systeem maken en ik wil daarbij gebruik maken van javascript (jQuery). Nu ben ik een boek over jQuery aan het lezen en kom tot de ontdekking dat ik daar best wat leuke dingen mee kan doen. Maar nu mijn vraag. Vinden jullie dat echt alles op een website (in dit geval mijn cms systeem) ook moet kunnen functioneren zonder javascript? Of... moet ik de gebruikers van het cms systeem straks gewoon "verplichten" om javascript in te schakelen?
Voorbeeld, je maakt met behulp van jQuery een geanimeerd drop down menu. Je klikt op een hoofdcategorie en de subcategorieën komen vervolgens naar beneden schuiven. Heel mooi allemaal, leuke user experience. Maar voor iemand die javascript heeft uitgeschakeld werkt dit niet. Moet ik voor deze gebruikers dan een aparte losse pagina maken die getoond wordt zodra ze op een hoofdcategorie klikken?
Ander voorbeeld: met jQuery kun je gemakkelijk de vormgeving van tabellen aanpassen en de data in tabellen manipuleren. Moet ik hier dan maar geen gebruik van maken en alles server side oplossen omdat sommige mensen javascript niet hebben ingeschakeld?
Mijn vraag is dus eigenlijk of je een gebruiker kunt "verplichten" om gebruik te maken van javascript omdat anders het systeem niet werkt. Ben benieuwd naar jullie reacties.
Gewijzigd op 15/07/2011 15:22:39 door Ozzie PHP
Maar bijv. een afbeelding die met een hover groter wordt, jammer als de gebruiker dat mist, maar erg is het niet.
Maar waar praten we eigenlijk over, de meeste mensen weten niet eens dat je javascript kan uitzetten, dus ik denk dat maar 0.0001% het niet kan zien.
In het geval van je drop down menu zou je en fallback met CSS kunnen maken.
Om te kijken of js aanstaat heeft Modernizr een perfecte oplossing. Je voegt aan je html tag een class no-js toe en met js verander je die class naar js. Hiermee kan je dingen stylen met css als js uitstaat. Voorbeeldje:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<!doctype html>
<html class="no-js">
<head>
<title>JS test</title>
<style type="text/css">
#jsMessage { display: none; }
.no-js #jsMessage { display: block; }
</style>
</head>
<body>
<div id="jsMessage">Zet JS aan!</div> <!-- Zo moet het dus nooit... -->
<script type="text/javascript">
document.getElementsByTagName('html')[0].className = 'js';
</script>
</body>
</html>
<html class="no-js">
<head>
<title>JS test</title>
<style type="text/css">
#jsMessage { display: none; }
.no-js #jsMessage { display: block; }
</style>
</head>
<body>
<div id="jsMessage">Zet JS aan!</div> <!-- Zo moet het dus nooit... -->
<script type="text/javascript">
document.getElementsByTagName('html')[0].className = 'js';
</script>
</body>
</html>
Goh, goeie vraag. Ik denk dat iedereen tegenwoordig toch wel javascript ingeschakeld heeft. Maar er is bijvoorbeeld wel een probleem als je op een openbare plaats bent (bv. ziekenhuis). Veel openbare gebouwen (hier in België toch) schakelen verschillende opties (o.a. javascript) uit om hacking enzovoort tegen te gaan.
Zoals je al zei, er zijn mensen die javascript hebben uitgeschakeld ivm irritante pop-ups etc, dus is het geen goed idee om je website vol met javascripts te bouwen.
Het is trouwens niet mogelijk, en ook niet wenselijk, om je bezoekers te 'verplichten' om iets te doen wat zij niet willen, je bent tenslotte afhankelijk van die bezoekers, als die vinden dat ze ergens toe gedwongen worden zie je ze waarschijnlijk nooit meer terug en dat is toch niet de bedoeling.
@Jef: hmmm, ja... da's op zich wel een goede. Op zich lijkt het me niet wenselijk om in een openbare ruimte een beheersysteem van een website te gebruiken, maar in geval van nood... tja dan is het inderdaad lullig als je site niet werkt omdat javascript niet in ingeschakeld.
Toevoeging op 15/07/2011 15:41:43:
@John: ja klopt, maar het gaat om een cms systeem dat mensen wel moeten gebruiken anders kunnen ze hun website niet beheren. Maar als ik het zo hoor dan is het dus geen goed idee om gebruikers te verplichten om javascript in te schakelen.
Iemand tot iets verplichten is dus geen goede zaak, afgezien van het feit dat ik mij afvraag hoe je iemand überhaupt kan verplichten, lijkt mij onmogelijk.
Je kunt, net als bij mensen die oudere (IE) browsers gebruiken, er hooguit op attenderen dat zonder javascript of door gebruikmakend van oude browsers, je site beperkt wordt weergegeven en dat het met javascript en de nieuwste browsers er veel beter eruit ziet.
Gewijzigd op 15/07/2011 19:31:41 door John Acid
Dan kan je lachen als je wilt editten, quoten etc....
@aar: ik heb daar geen account.
Ik snap ook wel dat sommige scripts handig/nodig zijn maar de keuze blijft aan de bezoeker en niet aan de websitemaker/beheerder.
Voorlopig is het maken van een website een pas begonnen hobby, ik ben er dus nog niet professioneel mee bezig, maar als ik dat wel zou gaan doen zou ik wel kritisch blijven over nut/noodzaak van allerlei scripts.
Gewijzigd op 15/07/2011 20:47:31 door John Acid
Ik snap wel wat je bedoelt. Maar als ik voor een bedrijf een website maakt en die draait onder mijn cms, dan moet men javascript wel inschakelen anders kunnen ze het cms niet gebruiken. Dat is eigenlijk wat ik bedoel. Ik vind het klote (maar misschien zit er niks anders op) als ik voor ieder javascript een "omweg" moet bedenken voor mensen die geen javascript hebben. Dat is een beetje wat mij dwarszit. Maar ja, ik moet er even goed over nadenken.