Fossil

Check-in [e4a18b67]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Less rigid string-to-number conversion for the custom "data-anim-ms" attribute.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | js-hamburger-menu
Files: files | file ages | folders
SHA3-256:e4a18b67028e3c357955082b6520668c2cfbcf50e82f1384fc535a5f90a79b9a
User & Date: florian 2019-01-02 07:03:00
Context
2019-01-02
07:24
Oops, fallen for testing built-in versus customized skin, fix the previous check-in. Closed-Leaf check-in: dac9293b user: florian tags: js-hamburger-menu
07:03
Less rigid string-to-number conversion for the custom "data-anim-ms" attribute. check-in: e4a18b67 user: florian tags: js-hamburger-menu
2018-10-14
06:46
Backout [4d384ed875] and [5677271a1c] to simplify the hamburger menu customization template. check-in: bf8946a1 user: florian tags: js-hamburger-menu
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to skins/default/js.txt.

37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
  // We need this ugly calling form for old browsers that don't allow
  // panel.style.hasOwnProperty('transition'); catering to old browsers
  // is the whole point here.
  var animate = panel.style.transition !== null && (typeof(panel.style.transition) == "string");

  // The duration of the animation can be overridden from the default skin
  // header.txt by setting the "data-anim-ms" attribute of the panel.
  var animMS = panel.getAttribute("data-anim-ms");
  if (animMS === "0")
    animate = false;   // disable animation if "data-anim-ms" === "0"
  else if (!animMS || animMS>>0 !== Number(animMS) || animMS < 0)
    animMS = 400;   // set default if missing, empty, non-integer, or negative

  // Calculate panel height despite its being hidden at call time.
  // Based on https://stackoverflow.com/a/29047447/142454
  var panelHeight;  // computed on first panel display
  function calculatePanelHeight() {

    // Clear the max-height CSS property in case the panel size is recalculated







|
|
|
|
|







37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
  // We need this ugly calling form for old browsers that don't allow
  // panel.style.hasOwnProperty('transition'); catering to old browsers
  // is the whole point here.
  var animate = panel.style.transition !== null && (typeof(panel.style.transition) == "string");

  // The duration of the animation can be overridden from the default skin
  // header.txt by setting the "data-anim-ms" attribute of the panel.
  var animMS = parseInt(panel.getAttribute("data-anim-ms"));
  if (isNaN(animMS) || animMs == 0)
    animate = false;   // disable animation if non-numeric or zero
  else if (animMS < 0)
    animMS = 400;   // set default animation duration if negative

  // Calculate panel height despite its being hidden at call time.
  // Based on https://stackoverflow.com/a/29047447/142454
  var panelHeight;  // computed on first panel display
  function calculatePanelHeight() {

    // Clear the max-height CSS property in case the panel size is recalculated