The
baseline was a semantically marked-up list of questions and answers (using a definition list).
The next level of experience involved the use of some advanced CSS to spice things up a little bit,
showing and hiding content in an accessible way using the :target pseudoclass selector. The
final level of experience was delivered via JavaScript, which dynamically opened and closed the
answers with a nice sliding motion and scrolled the page to make reading easier.
In addition to learning the techniques needed to accomplish this task, you also got to
work a little more with the Prototype and Moo.fx libraries, and you learned how to manage
potential script conflicts by keeping track of processes.
CHAPTER 8 n CASE STUDY: FAQ FACELIFT 187
A Dynamic Help System
By Dan Webb
Modern web applications are often characterized as having richer and more dynamic interfaces
that mimic the desktop experiences much more closely than their predecessors. Most of
the credit for this can be given to the major JavaScript libraries (and, of course, to their developers)
as we now have a much more solid base on which to work when starting to develop
these interfaces. JavaScript libraries, as discussed throughout this book, take care of lots of the
detail of cross-browser compatibility and JavaScript??™s quirks. When writing a web application,
however, they are rarely the only challenges you??™ll face. Your user interface (UI) must interact
with server-side code well, be as robust as possible (even on platforms that don??™t support
JavaScript (JS), and be easily maintainable.
Pages:
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265