datepicker.xhtml 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE html [
  3. <!ENTITY % htmlDTD PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
  4. %htmlDTD;
  5. ]>
  6. <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
  7. <head>
  8. <title>Date Picker</title>
  9. <link rel="stylesheet" href="chrome://global/skin/datetimeinputpickers.css"/>
  10. <script type="application/javascript" src="chrome://global/content/bindings/datekeeper.js"></script>
  11. <script type="application/javascript" src="chrome://global/content/bindings/spinner.js"></script>
  12. <script type="application/javascript" src="chrome://global/content/bindings/calendar.js"></script>
  13. <script type="application/javascript" src="chrome://global/content/bindings/datepicker.js"></script>
  14. </head>
  15. <body>
  16. <div id="date-picker">
  17. <div class="calendar-container">
  18. <div class="nav">
  19. <button class="left"/>
  20. <button class="right"/>
  21. </div>
  22. <div class="week-header"></div>
  23. <div class="days-viewport">
  24. <div class="days-view"></div>
  25. </div>
  26. </div>
  27. <div class="month-year-container">
  28. <button class="month-year"/>
  29. </div>
  30. <div class="month-year-view"></div>
  31. </div>
  32. <template id="spinner-template">
  33. <div class="spinner-container">
  34. <button class="up"/>
  35. <div class="spinner"></div>
  36. <button class="down"/>
  37. </div>
  38. </template>
  39. <script type="application/javascript">
  40. // We need to hide the scroll bar but maintain its scrolling
  41. // capability, so using |overflow: hidden| is not an option.
  42. // Instead, we are inserting a user agent stylesheet that is
  43. // capable of selecting scrollbars, and do |display: none|.
  44. var domWinUtls = window.QueryInterface(Components.interfaces.nsIInterfaceRequestor).
  45. getInterface(Components.interfaces.nsIDOMWindowUtils);
  46. domWinUtls.loadSheetUsingURIString('data:text/css,@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); scrollbar { display: none; }', domWinUtls.AGENT_SHEET);
  47. // Create a DatePicker instance and prepare to be
  48. // initialized by the "DatePickerInit" event from datetimepopup.xml
  49. const root = document.getElementById("date-picker");
  50. new DatePicker({
  51. monthYear: root.querySelector(".month-year"),
  52. monthYearView: root.querySelector(".month-year-view"),
  53. buttonLeft: root.querySelector(".left"),
  54. buttonRight: root.querySelector(".right"),
  55. weekHeader: root.querySelector(".week-header"),
  56. daysView: root.querySelector(".days-view")
  57. });
  58. </script>
  59. </body>
  60. </html>