From 59b7e2466c2b7c5c408a4963b05b13fd808aa07a Mon Sep 17 00:00:00 2001 From: ritsyy Date: Sun, 17 Jan 2016 18:05:30 +0530 Subject: [PATCH] Fix #345: Remove table sorting model Related commits: https://github.com/whatwg/html/commit/6db0d8d4e3456140de958c963afe9bb9ec7b6a25 https://github.com/whatwg/html/commit/f1b702f93a52c69993aed5b690104d41ffef53ee https://github.com/whatwg/html/commit/427c247ba3ffd61db556b4edfd2992e3ac7e6241 https://github.com/whatwg/html/commit/2699e4a3951a2c3e7b7e740d475b43f67d0b9f63 https://github.com/whatwg/html/commit/776ac74574c176c253713646eeb6216bee80dea5 PR: https://github.com/whatwg/html/pull/526 --- images/sample-table-sortable-1.png | Bin 41540 -> 0 bytes images/sample-table-sortable-2.png | Bin 41484 -> 0 bytes images/sample-table-sortable-3.png | Bin 41490 -> 0 bytes source | 1476 +--------------------------- 4 files changed, 23 insertions(+), 1453 deletions(-) delete mode 100644 images/sample-table-sortable-1.png delete mode 100644 images/sample-table-sortable-2.png delete mode 100644 images/sample-table-sortable-3.png diff --git a/images/sample-table-sortable-1.png b/images/sample-table-sortable-1.png deleted file mode 100644 index 7e7373bb0157c74ea21ea29d2aacfb6c12f66074..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41540 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%0DY~y8v0)f3`@p2{|4Lz23 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 I-LVY$FPZ;9)c^nh diff --git a/images/sample-table-sortable-2.png b/images/sample-table-sortable-2.png deleted file mode 100644 index 08eaaafbefe788ac73243c2dbb8ec7c5597eb919..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41484 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

LZaz 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 QML58vsiv!1t85+of3+n^S^xk5 diff --git a/images/sample-table-sortable-3.png b/images/sample-table-sortable-3.png deleted file mode 100644 index 07a6e92ce810e94d74ef3d1258cf9e7cb4987a06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41490 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 (if the usemap attribute is present)

  • select
  • textarea
  • -
  • sorting interface th elements
  • video (if the controls attribute is present)
  • @@ -9995,7 +9994,6 @@ http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20HTML%3E%0
  • onseeking
  • onselect
  • onshow
  • -
  • onsort
  • onstalled
  • onsubmit
  • onsuspend
  • @@ -18738,11 +18736,13 @@ this specification: the <abbr>WHATWG</abbr> and the
    -

    Here, a short table has its numeric values encoded using data so that the - table sorting model can provide a sorting mechanism on each column, despite the - numbers being presented in textual form in one column and in a decomposed form in another.

    +

    Here, a short table has its numeric values encoded using the data element so + that the table sorting JavaScript library can provide a sorting mechanism on each column + despite the numbers being presented in textual form in one column and in a decomposed form in + another.

    -
    <table sortable>
    +   
    <script src="sortable.js"></script>
    +<table class="sortable">
      <thead> <tr> <th> Game <th> Corporations <th> Map Size
      <tbody>
       <tr> <td> 1830 <td> <data value="8">Eight</data> <td> <data value="93">19+74 hexes (93 total)</data>
    @@ -37416,7 +37416,6 @@ dictionary TrackEventInit : EventInit {
        script-supporting elements.
        
    Content attributes:
    Global attributes
    -
    sortable
    DOM interface:
    interface HTMLTableElement : HTMLElement {
    @@ -37434,8 +37433,6 @@ dictionary TrackEventInit : EventInit {
       [SameObject] readonly attribute HTMLCollection rows;
       HTMLTableRowElement insertRow(optional long index = -1);
       void deleteRow(long index);
    -  attribute boolean sortable;
    -  void stopSorting();
     };
    @@ -37536,11 +37533,6 @@ dictionary TrackEventInit : EventInit {
    -

    The sortable attribute is used in the table - sorting model.

    - -
    -
    @@ -37794,12 +37786,6 @@ dictionary TrackEventInit : EventInit { -

    The stopSorting() method is used in the table - sorting model.

    - -

    The IDL attribute sortable must - reflect the sortable content attribute.

    -
    @@ -38716,12 +38702,12 @@ the cell that corresponds to the values of the two dice.
    Categories:
    -
    If the th element is a sorting interface th element: Interactive content.
    -
    Otherwise: None.
    +
    None.
    Contexts in which this element can be used:
    As a child of a tr element.
    Content model:
    -
    Flow content, but with no header, footer, sectioning content, or heading content descendants, and if the th element is a sorting interface th element, no interactive content descendants.
    +
    Flow content, but with no header, footer, + sectioning content, or heading content descendants.
    Content attributes:
    Global attributes
    @@ -38730,14 +38716,11 @@ the cell that corresponds to the values of the two dice.
    headers
    scope
    abbr
    -
    sorted
    DOM interface:
    interface HTMLTableHeaderCellElement : HTMLTableCellElement {
       attribute DOMString scope;
       attribute DOMString abbr;
    -  attribute DOMString sorted;
    -  void sort();
     };
    @@ -38795,23 +38778,17 @@ the cell that corresponds to the values of the two dice. to a data cell). It is typically an abbreviated form of the full header cell, but can also be an expansion, or merely a different phrasing.

    -

    The sorted attribute is used in the table - sorting model.

    -

    The th element and its colspan, rowspan, headers, and scope attributes take part in the table model.

    -

    The sort() method is used in the table sorting - model.

    -

    The scope IDL attribute must reflect the content attribute of the same name, limited to only known values.

    -

    The abbr and sorted IDL attributes must reflect the - content attributes of the same name.

    +

    The abbr IDL attribute must reflect + the content attributes of the same name.

    @@ -39970,1339 +39947,6 @@ the cell that corresponds to the values of the two dice. - -

    Table sorting model

    - -

    The sortable attribute on - table elements is a boolean attribute. When present, it indicates that - the user agent is to allow the user to sort the table.

    - -

    To make a column sortable in a table with a thead, the column needs - to have th element that does not span multiple - columns in a thead above any rows that it is to sort.

    - -

    To make a column sortable in a table without a thead, the column - needs to have th element that does not span multiple - columns in the first tr element of the table, where that - tr element is not in a tfoot.

    - -

    When the user selects a column by which to sort, the user agent sets the th - element's sorted attribute. This attribute can also - be set manually, to indicate that the table should be automatically sorted, even when scripts - modify the page on when the page is loaded.

    - -

    The sorted attribute, if specified, must have a value that - is a set of space-separated tokens consisting of optionally a token whose value is an - ASCII case-insensitive match for the string "reversed", and optionally a token whose value - is a valid non-negative integer greater than zero, in either order.

    - -

    In other words, ignoring spaces and case, the sorted attribute's value can be empty, "reversed", "1", "reversed 1", or - "1 reversed", where "1" is any number equal to or greater than 1.

    - -

    While one or more th elements in the table have a sorted attribute, the user agent will keep the table's data rows - sorted. The value of the attribute controls how the column is used in determining the sort order. - The reversed keyword means that the column sort - direction is reversed, rather than normal, which is the default if the keyword - is omitted. The number, if present, indicates the column key ordinality; if the number - is omitted, the column is the primary key, as if the value 1 had been specified.

    - -

    Thus, sorted="1" indicates the table's primary key, sorted="2" its secondary key, and so forth.

    - -
    - -

    A sorting-capable th element is a th element that matches - all the following conditions simultaneously:

    - -
      - -
    • It corresponds to a cell whose width is 1. - (Specifically, a header cell, since this is a th element.)

    • - -
    • There is no cell that corresponds to another - sorting-capable th element that covers slots in the same column but on a higher (earlier) row.

    • - -
    • - -

      If the cell's table has - a row group corresponding to a thead - element, the cell is in a row - group that corresponds to the first thead element of the cell's table.

      - -

      Otherwise: the cell is not in a row group corresponding to a tfoot element, and - the cell is in the first row - of the table.

      - -
    • - -
    - -

    In other words, each column can have one - sorting-capable th element; this will be the highest th in - a thead that spans no other columns, or, if there is no thead, the - th in the first row (that is not in a tfoot), assuming it spans no - columns.

    - -

    The sorting-capable th elements of the table element table are the sorting-capable - th elements whose cell's table is table.

    - -

    A table element table is a sorting-capable - table element if there are one or more sorting-capable th - elements of the table element table.

    - -

    A th element is a sorting-enabled th element if it is a - sorting-capable th element and it has a sorted attribute.

    - -

    The sorting-enabled th elements of the table element table are the sorting-enabled - th elements whose cell's table is table.

    - -

    A table element table is a sorting-enabled - table element if there are one or more sorting-capable th - elements of the table element table, and at least one of - them is a sorting-enabled th element (i.e. at least one has a sorted attribute).

    - -

    A table element is a table element with a user-agent exposed - sorting interface if it is a sorting-capable table element and has - a sortable attribute specified.

    - -

    A sorting interface th element is a sorting-capable - th element whose cell's table is a table element with a user-agent exposed - sorting interface.

    - -
    - -

    Each table element has a currently-sorting flag, which must initially - be false.

    - -
    - -

    The sorted attribute must not be specified on - th elements that are not sorting-capable - th elements. The sortable attribute - must not be specified on table elements that are not sorting-capable table elements.

    - -
    - -

    To determine a th element's sorted attribute's - column sort direction and column key ordinality, user agents must use - the following algorithm:

    - -
      - -
    1. Let direction be normal.

      - -
    2. Let have explicit direction be false.

      - -
    3. Let ordinality be 1.

      - -
    4. Let have explicit ordinality be false.

      - -
    5. Let tokens be the result of splitting the attribute's value on spaces.

    6. - -
    7. - -

      For each token token in tokens, run the appropriate - steps from the following list:

      - -
      - -
      If have explicit direction is false and token is an - ASCII case-insensitive match for the string "reversed"
      - -
      - -

      Let direction be reversed and have explicit - direction be true.

      - -
      - - -
      If have explicit ordinality is false
      - -
      - -

      Parse token as an - integer. If this resulted in an error or the value zero, then ignore the token. - Otherwise, set ordinality to the parsed value, and set have - explicit ordinality to true.

      - -
      - - -
      Otherwise
      - -

      Ignore the token.

      - -
      - -
    8. - -
    9. The column sort direction is the value of direction, and - the column key ordinality is the value of ordinality.

    10. - -
    - -
    - -

    A table must not have two th elements whose sorted attribute have the same column key - ordinality.

    - -
    - -
    - -

    The table sorting algorithm, which is applied to a table, is as - follows:

    - -
      - -
    1. Let table be the table element being sorted.

    2. - -
    3. If table's currently-sorting flag is true, then abort - these steps.

    4. - -
    5. Set table's currently-sorting flag to true.

    6. - -
    7. Fire a simple event named sort that is - cancelable at table.

    8. - -
    9. If the event fired in the previous step was canceled, then jump to the step labeled - end below.

    10. - -
    11. - -

      If table is not now a sorting-enabled table - element, then jump to the step labeled end below.

      - -

      Even if table was a sorting-enabled table - element when the algorithm was invoked, the DOM might have been entirely changed by the - event handlers for the sort event, so this has to be verified at - this stage, not earlier.

      - -
    12. - -
    13. Let key heading cells be the sorting-enabled th - elements of the table element table.

    14. - -
    15. Sort key heading cells in ascending order of the column key - ordinality of their sorted attributes, with those - having the same column key ordinality being sorted in tree order.

      - -
    16. - -

      Let row collection cursor be a pointer to an element, initially pointing - at the first child of table that is after table's first - thead, if any, and that is either a tbody or a tr - element, assuming there is one. If there is no such child, then jump to the step labeled - end below.

      - -
    17. - -
    18. If table has no row group - corresponding to a thead element, then set ignore first group to - true. Otherwise, set it to false.

    19. - -
    20. - -

      Run these substeps:

      - -
        - -
      1. Row loop: Let rows be an empty list of tr - elements.

      2. - -
      3. - -

        Run these substeps:

        - -
          - -
        1. - -

          Run the appropriate steps from the following list:

          - -
          - -
          If row collection cursor points to a tr element - -
          - -
            - -
          1. Collect: Append the element pointed to by row collection - cursor to rows.

          2. - -
          3. If there are no tr or tbody children of table that are later siblings of the element pointed to by row - collection cursor, or if the next such child is a tbody element, then jump - to the step labeled group below.

          4. - -
          5. Let row collection cursor point to the next tr child - of table that is a later sibling of the element pointed to by row collection cursor.

          6. - -
          7. Jump back to the step labeled collect above.

          8. - -
          - -
          - - -
          If row collection cursor points to a tbody element - -
          - -
            - -
          1. Place all the tr element children of the element pointed to by row collection cursor into rows, in tree - order.

          2. - -
          3. If rows is empty, jump to the step labeled increment loop - below.

          4. - -
          - -
          - -
          - -
        2. - -
        3. Group: Let groups be an empty list of groups of tr - elements.

        4. - -
        5. Let group be an empty group of tr elements.

        6. - -
        7. Let group cursor be a pointer to an element, initially pointing at the - first tr element in rows.

        8. - -
        9. - -

          Run these substeps:

          - -
            - -
          1. Start group: Let pending rows in group be 1.

          2. - -
          3. - -

            Run these substeps:

            - -
              - -
            1. Group loop: Append the tr element pointed to by group - cursor to group.

            2. - -
            3. If there are any cells whose highest row's element is the one pointed to by group - cursor, then let tallest height be the number of rows covered by the - tallest such cell.

            4. - -
            5. If tallest height is greater than pending rows in - group then set pending rows in group to tallest - height.

            6. - -
            7. Decrement pending rows in group by one.

            8. - -
            9. Let group cursor point to the next tr element in rows, if any; otherwise, let it be null.

            10. - -
            11. If group cursor is not null and pending rows in - group is not zero, jump back to the step labeled group loop.

            12. - -
            - -
          4. - -
          5. Append a new group to groups consisting of the tr - elements in group.

          6. - -
          7. Empty group.

          8. - -
          9. If group cursor is not null, then jump back to the step labeled start - group.

          10. - -
          - -
        10. - -
        11. If ignore first group is true, then drop the first group in groups and set ignore first group to false.

        12. - -
        13. - -

          Run these steps:

          - -
            - -
          1. Drop leading header groups: If groups is now empty, jump to the - step labeled increment loop below.

          2. - - - -
          3. If the first group of groups consists of tr elements - whose element children are all th elements, then drop the first group in groups and jump back to the previous step (labeled drop leading header - groups).

          4. - -
          - -
        14. - -
        15. Let insertion point be a placeholder in a DOM tree, which can be used - to reinsert nodes at a specific point in the DOM. Insert insertion point into - the parent of the first tr element of the first group in groups, - immediately before that tr element.

        16. - -
        17. - -

          Sort the groups in groups, using the following algorithm to decide the - relative order of any two groups a and b (the algorithm - either returns that a comes before b, or that b comes before a):

          - -
            - -
          1. Let key index be an index into key heading - cells, initially denoting the first element in the list.

          2. - -
          3. Let direction be a sort direction, initially ascending. Its - other possible value is descending. When direction is - toggled, that means that if its value is ascending, it must be changed to - descending, and when its value is descending, it must be changed to - ascending.

          4. - -
          5. - -

            Run these substeps:

            - -
              - -
            1. Column loop: Let th be the key indexth - th in key heading cells.

            2. - -
            3. If th's sorted attribute's - column sort direction is reversed, then toggle direction.

            4. - -
            5. Let tentative order be the result of comparing two row groups - using the th element th, with a and - b as the rows.

            6. - -
            7. If tentative order is not "equal", then jump to the step labeled - return below.

            8. - -
            9. Increment key index.

            10. - -
            11. If key index still denotes a th element in key heading cells, then jump back to the step above labeled column - loop.

            12. - -
            - -
          6. - -
          7. If a's tr elements precede b's in - tree order, then let tentative order be "a before b". - Otherwise, let tentative order be "b before a".

          8. - -
          9. Return: Return the relative order given by the matching option from the following - list:

            - -
            - -
            If direction is ascending and tentative - order is "a before b"
            - -
            Return that a comes before b.
            - - -
            If direction is ascending and tentative - order is "b before a"
            - -
            Return that b comes before a.
            - - -
            If direction is descending and tentative - order is "a before b"
            - -
            Return that b comes before a.
            - - -
            If direction is descending and tentative - order is "b before a"
            - -
            Return that a comes before b.
            - -
            - -
          10. - -
          - -

          When the user agent is required to compare two row groups using the th element th, - with a and b being the two row groups respectively, the - user agent must run the following steps:

          - -
            - -
          1. Let x be the x-coordinate of the slots that - th covers in its table.

          2. - -
          3. - -

            Let cella be the element corresponding to the cell in the first row of group - a that covers the slot in that row whose - x-coordinate is x.

            - -

            Let cellb be the element corresponding to the cell in the first row of group - b that covers the slot in that row whose - x-coordinate is x.

            - - - -

            In either case, if there's no cell that actually covers - the slot, then use the value null instead.

            - -
          4. - -
          5. - -

            Let typea and valuea be - the type and value of the cell cella, as defined - below.

            - -

            Let typeb and valueb be - the type and value of the cell cellb, as defined - below.

            - -

            The type and value of the cell cell are computed as follows.

            - -
              - -
            1. If cell is null, then the type is "string" and the value is - the empty string; abort these steps.

            2. - -
            3. If, ignoring inter-element whitespace and nodes other than - Element and Text nodes, cell has only one child - and that child is a data element, then the value is the value of that - data element's value attribute, if there is - one, or the empty string otherwise; the type is "string".

              - -
            4. If, ignoring inter-element whitespace and nodes other than - Element and Text nodes, cell has only one child - and that child is a progress element, then the value is the value of that - progress element's value attribute, if - there is one, or the empty string otherwise; the type is "string".

              - -
            5. If, ignoring inter-element whitespace and nodes other than - Element and Text nodes, cell has only one child - and that child is a meter element, then the value is the value of that - meter element's value attribute, if there is - one, or the empty string otherwise; the type is "string".

              - -
            6. - -

              If, ignoring inter-element whitespace and nodes other than - Element and Text nodes, cell has only one - child and that child is a time element, then the value is the - machine-readable equivalent of the element's contents, if any, and the type is - the kind of value that is thus obtained - (a month, - a date, - a yearless date, - a time, - a local date and time, - a time-zone offset, - a global date and time, - a week, - a year, or - a duration); - abort these steps after completing this one.

              - -

              If there is no machine-readable equivalent, then the type is "string" and the value is - the empty string.

              - -

              If the type is - a month, - a date, - a week, or - a year, - then change the value to be the instant in time (with no time zone) that describes the - earliest moment that the value represents, and change the type to be - a local date and time.

              - -

              For example, if the cell was <td><time>2011-11</time> then for sorting purposes the value is - interpreted as "2011-11-01T00:00:00.000" and the type is treated as a local date and time rather than a month.

              - -

              Similarly, if the cell was <td><time - datetime="2014">MMXIV</time> then for sorting purposes the value is interpreted as - "2014-01-01T00:00:00.000" and the type is treated as a local date and time rather than a year.

              - -
            7. - -
            8. The value is the element's textContent. The type is "string".

            9. - -
            - -
          6. - -
          7. - -

            If typea and typeb are not - equal, then: return "a before b" if typea is earlier in the - following list than typeb, otherwise, return "b before a"; - then, abort these steps.

            - -
              -
            1. time
            2. -
            3. yearless date
            4. -
            5. local date and time
            6. -
            7. global date and time
            8. -
            9. time-zone offset
            10. -
            11. duration
            12. -
            13. "string"
            14. -
            - -
          8. - -
          9. If valuea and valueb are - equal, then return "equal" and abort these steps.

          10. - -
          11. - -

            If typea and typeb are not - "string", then: if valuea is earlier than valueb then return "a before b" and abort these steps, otherwise, - return "b before a" and abort these steps.

            - -

            Values sort in their natural order, with the following additional constraints:

            - -

            For time values, 00:00:00.000 is the earliest value and - 23:59:59.999 is the latest value.

            - -

            For yearless date values, 01-01 is the earliest - value and 12-31 is the latest value; 02-28 is earlier than 02-29 which is earlier than - 03-01.

            - -

            Values that are local date and time compare as - if they were in the same time zone.

            - - - -

            For time-zone offset values, -23:59 is the earliest - value and +23:59 is the latest value.

            - - - -
          12. - - - -
          13. - -

            Let componentsa be the result of parsing the sort - key valuea.

            - -

            Let componentsb be the result of parsing the sort - key valueb.

            - -

            As described below, componentsa and componentsb are tuples consisting of a list of n - numbers, a list of n number strings, a list of n+1 non-numeric strings, and a list of 2n+1 raw - strings, for any non-negative integer value of n (zero or more).

            - -
          14. - -
          15. - -

            Let order be the result of a locale-specific string - comparison of componentsa's first non-numeric - string and componentsb's first non-numeric string, - in the context of th.

            - -

            If order is not "equal" then return order and abort - these steps.

            - -
          16. - -
          17. - -

            If componentsa and componentsb both have exactly one number, then run these - substeps:

            - -
              - -
            1. - -

              If componentsa's number is less than componentsb's number, return "a before b".

              - -

              If componentsb's number is less than componentsa's number, return "b before a".

              - -
            2. - -
            3. - -

              Let order be the result of a locale-specific string - comparison of componentsa's second non-numeric - string and componentsb's second non-numeric - string, in the context of th.

              - -

              If order is not "equal" then return order and - abort these steps.

              - -
            4. - -
            5. - -

              Let order be the result of a locale-specific string - comparison of componentsa's number string and - componentsb's number string, in the context of th.

              - -

              If order is not "equal" then return order and - abort these steps.

              - -
            6. - -
            - -

            Otherwise, run these substeps:

            - -
              - -
            1. - -

              If componentsa has zero numbers but componentsb has more than zero numbers, return "a before - b".

              - -

              If componentsb has zero numbers but componentsa has more than zero numbers, return "b before - a".

              - -
            2. - -
            3. - - - -

              If componentsa has one number, return "a before - b".

              - -

              If componentsb has one number, return "b before - a".

              - -
            4. - -
            5. - - - -

              If componentsa and componentsb have more than one number, run these substeps:

              - -
                - -
              1. Let count be the smaller of the number of numbers in componentsa and the number of numbers in componentsb.

              2. - -
              3. For each number in componentsa and componentsb from the first to the countth, in - order: if componentsa's number is less than componentsb's number, then return "a before b" and abort - these steps; otherwise, if componentsb's number is - less than componentsa's number, return "b before a" - and abort these steps.

              4. - -
              5. - -

                If componentsa has fewer numbers than componentsb, return "a before b" and abort these steps.

                - -

                If componentsb has fewer numbers than componentsa, return "b before a" and abort these steps.

                - -
              6. - - - -
              7. Let index be zero.

              8. - -
              9. - -

                String loop: Let order be the result of a locale-specific - string comparison of componentsa's indexth number string and componentsb's indexth number string, - in the context of th.

                - -

                If order is not "equal" then return order and - abort these steps.

                - -
              10. - -
              11. - -

                Increment index.

                - -
              12. - -
              13. - -

                Let order be the result of a locale-specific string - comparison of componentsa's indexth separator string and componentsb's indexth separator - string, in the context of th.

                - -

                If order is not "equal" then return order and - abort these steps.

                - -
              14. - -
              15. - -

                If index is less than the number of numbers in componentsa and componentsb, jump back - to the step labeled string loop.

                - -
              16. - -
              - -
            6. - -
            - -
          18. - -
          19. - - - -

            Let index be zero.

            - -
          20. - -
          21. - -

            Run these substeps:

            - -
              - -
            1. - -

              Final loop: Let order be the result of a raw string - comparison of componentsa's nth - raw string and componentsb's nth - raw string.

              - -

              If order is not "equal" then return order and abort - these steps.

              - -
            2. - -
            3. - -

              Increment index.

              - -
            4. - -
            5. - -

              If index is less than the number of raw strings in componentsa and componentsb, jump back - to the step labeled final loop.

              - -
            6. - -
            - -
          22. - -
          23. - -

            Return "equal".

            - -
          24. - -
          - -
        18. - - -
        19. Let new order be a list of tr elements consisting of the - tr elements of all the groups in the newly ordered groups, with - the tr elements being in the same order as the groups to which they belong are in - groups, and the tr elements within each such group themselves - being ordered in tree order.

        20. - -
        21. Remove all the tr elements in new order from their parents, in tree order.

        22. - -
        23. Insert all the tr elements in new order into the DOM at the location of insertion point, in - the order these elements are found in new order.

        24. - - - -
        25. Remove insertion point from the DOM.

        26. - -
        - -
      4. - -
      5. Increment loop: If there are no tr or tbody children of - table that are later siblings of the element pointed to by row - collection cursor, then jump to the step labeled end below.

      6. - -
      7. Let row collection cursor point to the next tr or - tbody child of table that is a later sibling of the element - pointed to by row collection cursor.

      8. - -
      9. Jump back to the step labeled row loop above.

      10. - -
      - -
    21. - -
    22. End: Set table's currently-sorting flag to - false.

    23. - -
    - -

    When a user agent is to parse the sort key value, it must run the following steps. These return a tuple consisting of a list - of n numbers, a list of n number strings, a - list of n+1 non-numeric strings, and a list of 2n+1 - raw strings, respectively, for any non-negative integer value of n (zero or - more).

    - -
      - -
    1. -

      Let raw strings be a list of strings initially containing just one entry, an empty string.

      -
    2. - -
    3. -

      Let negatives prejudiced be false.

      -

      Let decimals prejudiced be false.

      -

      Let exponents prejudiced be false.

      -
    4. - -
    5. -

      Let buffer be the empty string.

      -

      Let index be zero.

      -

      Let mode be "separator".

      - -

      When a subsequent step in this algorithm says to push the buffer, the user agent must run the following substeps:

      - -
        - -
      1. Add an entry to raw strings that consists of the value of buffer.

      2. - -
      3. Add an entry to raw strings that is the empty string.

      4. - -
      5. Decrement index by one.

      6. - -
      7. Set mode to "separator".

      8. - -
      - -
    6. - -
    7. -

      Let checkpoint buffer be the empty string.

      -

      Let checkpoint index be zero.

      - -

      When a subsequent step in this algorithm says to checkpoint, the user agent must run the following substeps:

      - -
        -
      1. Set the checkpoint buffer to the value of buffer.

        -
      2. Set the checkpoint index to the value of index.

        -
      - -

      When a subsequent step in this algorithm says to push the checkpoint, the user agent must run the following substeps:

      - -
        - -
      1. Add an entry to raw strings that consists of the value of checkpoint buffer.

      2. - -
      3. Add an entry to raw strings that is the empty string.

      4. - -
      5. Decrement index by one.

      6. - -
      7. Set mode to "separator".

      8. - -
      - -
    8. - -
    9. - -

      Run through the following steps repeatedly until the condition in the last step is met.

      - -
        - -
      1. - -

        Top of loop: If index is equal to or greater than the number of - characters in value, let c be EOF. Otherwise, let c be the indexth character in value.

        - -
      2. - -
      3. - -

        Run the appropriate steps from the following list:

        - -
        parse using c, index, buffer, negatives prejudiced, decimals prejudiced, exponents prejudiced
        -      posting to: the last entry in raw strings
        -      buffering to: buffer
        -      defined above: push the buffer, checkpoint, push the checkpoint
        -      prefix xrefs with "sort parser"
        -      switch using mode
        -        case separator:
        -          c=space character:
        -            negatives prejudiced := false
        -            decimals prejudiced := false
        -            exponents prejudiced := false
        -            post c
        -          c=- unless negatives prejudiced:
        -            buffer := c
        -            mode := negative
        -          c=. unless decimals prejudiced:
        -            buffer := c
        -            mode := leading-decimal
        -          c=0-9:
        -            buffer := c
        -            mode := integral
        -          c=letter:
        -            exponents prejudiced := true
        -            post c
        -          c=eof:
        -            nop
        -          otherwise:
        -            post c
        -        case negative:
        -          c=-:
        -            negatives prejudiced := true
        -            post buffer
        -            post c
        -            mode := separator
        -          c=. unless decimals prejudiced:
        -            buffer c
        -            mode := leading-decimal
        -          c=0-9:
        -            buffer c
        -            mode := integral
        -          otherwise:
        -            post buffer
        -            dec index
        -            mode := separator
        -        case integral:
        -          c=-:
        -            negatives prejudiced := true
        -            push the buffer
        -          c=. unless decimals prejudiced:
        -            checkpoint
        -            buffer c
        -            mode := decimal
        -          c=0-9:
        -            post c
        -          c=e/E unless exponents prejudiced:
        -            checkpoint
        -            buffer c
        -            mode := exponent
        -          otherwise:
        -            push the buffer
        -        case leading-decimal:
        -          c=0-9:
        -            buffer c
        -            mode := decimal
        -          otherwise:
        -            post buffer
        -            dec index
        -            mode := separator
        -        case decimal:
        -          c=-:
        -            negatives prejudiced := true
        -            push the buffer
        -          c=. if numbers are coming:
        -            decimals prejudiced := true
        -            push the checkpoint
        -          c=. if numbers are not coming:
        -            push the buffer
        -          c=0-9:
        -            buffer c
        -          c=e/E unless exponents prejudiced:
        -            checkpoint
        -            buffer c
        -            mode := exponent
        -          otherwise:
        -            push the buffer
        -        case exponent:
        -          c=- unless negatives prejudiced:
        -            buffer c
        -            mode := exponent-negative
        -          c=.:
        -            decimals prejudiced := true
        -            push the checkpoint
        -          c=0-9:
        -            buffer c
        -            mode := exponent-number
        -          c=e/E:
        -            exponents prejudiced := true
        -            push the checkpoint
        -          otherwise:
        -            push the checkpoint
        -        case exponent-negative:
        -          c=-:
        -            negatives prejudiced := true
        -            push the checkpoint
        -          c=.:
        -            decimals prejudiced := true
        -            push the checkpoint
        -          c=0-9:
        -            buffer c
        -            mode := exponent-negative-number
        -          c=e/E:
        -            exponents prejudiced := true
        -            push the checkpoint
        -          otherwise:
        -            push the checkpoint
        -        case exponent-number:
        -          c=-:
        -            negatives prejudiced := true
        -            push the buffer
        -          c=.:
        -            decimals prejudiced := true
        -            push the checkpoint
        -          c=0-9:
        -            buffer c
        -          c=e/E:
        -            exponents prejudiced := true
        -            push the checkpoint
        -          otherwise:
        -            push the buffer
        -        case exponent-negative-number:
        -          c=-:
        -            negatives prejudiced := true
        -            push the checkpoint
        -          c=.:
        -            decimals prejudiced := true
        -            push the checkpoint
        -          c=0-9:
        -            buffer c
        -          c=e/E:
        -            exponents prejudiced := true
        -            push the checkpoint
        -          otherwise:
        -            push the buffer
        -      
        - -
      4. - -
      5. - -

        Increment index by one.

        - -
      6. - -
      7. - -

        If index is greater than the number of characters in value, stop repeating these substeps and continue along the overall steps. - Otherwise, return to the step labeled top of loop.

        - -
      8. - -
      - -
    10. - -
    11. -

      Let numbers be an empty list.

      -

      Let number strings be an empty list.

      -

      Let non-numeric strings be an empty list.

      -
    12. - -
    13. - -

      For each even-numbered entry in raw strings, in order, starting from the - first entry (numbered 0), append an entry to non-numeric strings that - consists of the result of trimming and collapsing the value of the entry.

      - -
    14. - -
    15. - -

      If raw strings has more than one entry, then, for each odd-numbered entry - in raw strings, in order, starting from the second entry (numbered 1), - append an entry to number strings that consists of the value of the entry, - and append an entry to number strings that consists of the result of parsing - the value of the entry using the rules for parsing floating-point number - values.

      - -
    16. - -
    17. - -

      Return numbers, number strings, non-numeric strings, and raw strings respectively.

      - -
    18. - -
    - -

    When the user agent is required by the step above to perform a locale-specific string - comparison of two strings a and b in the context of - an element e, the user agent must apply the Unicode Collation Algorithm, using - the Default Unicode Collation Element Table as customised for the language of the - element e in the Common Locale Data Repository, to the strings a and b, ignoring case. If the result of this algorithm places - a first, then return "a before b"; if it places b first, - then return "b before a"; otherwise, if they compare as equal, then return "equal".

    - -

    When the user agent is required by the step above to perform a raw string comparison - of two strings a and b, the user agent must apply the - Unicode Collation Algorithm, using the Default Unicode Collation Element Table without - customizations, to the strings a and b. If the result of - this algorithm places a first, then return "a before b"; if it places b first, then return "b before a"; otherwise, if they compare as equal, then return - "equal".

    - -

    Where the steps above refer to trimming and collapsing a string value, it means running the following algorithm:

    - -
      - -
    1. Strip leading and trailing whitespace from value.

    2. - -
    3. Replace any sequence of one or more space characters - in value with a single U+0020 SPACE character.

    4. - -
    - -
    - -

    When any of the descendants of a sorting-enabled table element change - in any way (including attributes changing), and when a table element becomes a - sorting-enabled table element, the table element is said to - become a table with a pending sort. When a table element becomes a - table with a pending sort, the user agent must queue a microtask that applies - the table sorting algorithm to that table, and then flags the - table as no longer being a table with a pending sort.

    - -
    - -

    When the user agent is to set the sort key to a th element target, it must run the following algorithm:

    - -
      - -
    1. Let table be the table of the table of which target is a header cell.

    2. - -
    3. If th is a sorting-enabled th element whose - column key ordinality is 1, then: if its column sort direction is - normal, set that element's sorted attribute to the - string "reversed", otherwise, set it to the empty string; then, abort these - steps.

    4. - -
    5. Let current headers be the sorting-enabled th - elements of the table element table, excluding target.

    6. - -
    7. Sort current headers by their sorted attributes' column key ordinality, in ascending - order, with elements that have the same column key ordinality being sorted in - tree order.

    8. - -
    9. Let level be 2.

    10. - -
    11. - -

      For each th element th in current - headers, in order, run the following substeps:

      - -
        - -
      1. If th's sorted attribute's - column sort direction is normal, then set th's sorted attribute to a valid integer whose value is - level. Otherwise, set it to the concatenation of the string "reversed", a U+0020 SPACE character, and a valid integer whose - value is level.

        - -
      2. Increment level by 1.

      3. - -
      - -
    12. - -
    13. Set target's sorted attribute to - the empty string.

    14. - -
    - -
    - -

    The activation behaviour of a sorting interface th - element is to set the sort key to the th element.

    - -

    The table will be sorted the next time the user agent performs a microtask checkpoint.

    - -
    - -
    - -
    th . sort()
    - -
    - -

    Act as if the user had indicated that this was to be the new primary sort column.

    - -

    The table won't actually be sorted until the script terminates.

    - -
    - - -
    table . stopSorting()
    - -
    - -

    Removes all the sorted attributes that are causing the - table to automatically sort its contents, if any.

    - -
    - -
    - -
    - -

    The th element's sort() method, when - invoked, must run the following steps:

    - -
      - -
    1. If the th element is not a sorting-capable th - element, then abort these steps.

    2. - -
    3. - -

      Set the sort key to the th element.

      - -

      The table will be sorted the next time the user agent performs a microtask checkpoint.

      - -
    4. - -
    - - -

    The table element's stopSorting() method, when invoked, must remove - the sorted attribute of all the sorting-enabled - th elements of the table element on which the method was invoked.

    - -
    - -

    Examples

    @@ -41512,51 +40156,6 @@ the cell that corresponds to the values of the two dice. 11.6% 12.3% 12.6% -
    - -

    Sometimes, tables are used for dense data. For examples, here a table is used to show entries - in an access log:

    - -
    <table sortable>
    - <thead>
    -  <tr>
    -   <th sorted> Timestamp
    -   <th> IP
    -   <th> Message
    - <tbody>
    -  <tr>
    -   <td> <time>21:01</time>
    -   <td> 128.30.52.199
    -   <td> Exceeded ingress limit
    -  <tr>
    -   <td> <time>21:04</time>
    -   <td> 128.30.52.3
    -   <td> Authentication failure
    -  <tr>
    -   <td> <time>22:35</time>
    -   <td> 128.30.52.29
    -   <td> Malware command request blocked
    -  <tr>
    -   <td> <time>22:36</time>
    -   <td> 128.30.52.3
    -   <td> Authentication failure
    -</table>
    - -

    Because the table element has a sortable - attribute, the column headers can be selected to change the table's sort order.

    - -

    This might render as follows:

    - -

    The table as marked above, but with the column headers having interactive affordances to select which column to sort by, the first being already selected. - -

    If the user activates the second column, the table might change as follows:

    - -

    The same table, but with the second column header's interactive affordance marked as selected, with the IP addresses sorted in numeric order (first the rows with the address ending in '3', then the row with the address ending in '29', and finally the row with the address ending in '199'. - -

    If the user activates the second column again, reversing the sort order, it might change as follows:

    - -

    The same table, but with the second column header's interactive affordance marked as selected and reversed, with the IP addresses sorted in reverse numeric order (first the row with the address ending in '199', then the row with the address ending in '29', and finally the rows with the address ending in '3'. -

    Forms

    @@ -60677,7 +59276,17 @@ not-slash = %x0000-002E / %x0030-10FFFF
    Contexts in which this element can be used:
    Where embedded content is expected.
    Content model:
    -
    Transparent, but with no interactive content descendants except for a elements, img elements with usemap attributes, button elements, input elements whose type attribute are in the Checkbox or Radio Button states, input elements that are buttons, select elements with a multiple attribute or a display size greater than 1, sorting interface th elements, and elements that would not be interactive content except for having the tabindex attribute specified.
    +
    Transparent, but with no interactive content descendants except + for a elements, img elements with + usemap attributes, button elements, + input elements whose type attribute are in + the Checkbox or Radio Button states, input elements that are + buttons, select elements with a multiple attribute or a display size greater than 1, and elements that would not be + interactive content except for having the tabindex attribute specified.
    Content attributes:
    Global attributes
    width
    @@ -65929,8 +64538,6 @@ v6DVT (also check for '- -' bits in the part above) --> with a multiple attribute or a display size greater than 1

    -
  • a sorting interface th element

  • -
  • an element that would not be interactive content except for having the tabindex attribute specified

  • @@ -73141,9 +71748,6 @@ END:VCARD
  • Browsing context containers
  • -
  • Sorting interface th - elements
  • -

    One valid reason to ignore the platform conventions and always allow an element @@ -87846,7 +86450,6 @@ typedef OnBeforeUnloadEventHandlerNonNull? OnBeforeUnloadEvent onseeking seeking onselect select onshow show - onsort sort onstalled stalled onsubmit submit onsuspend suspend @@ -88001,7 +86604,6 @@ interface GlobalEventHandlers { attribute EventHandler onseeking; attribute EventHandler onselect; attribute EventHandler onshow; - attribute EventHandler onsort; attribute EventHandler onstalled; attribute EventHandler onsubmit; attribute EventHandler onsuspend; @@ -108822,13 +107424,6 @@ table { parsing non-zero dimension values" can't return 0, if the value is "0" they treat it as an error --> -


    - -

    User agents are expected to render sorting interface th elements in such a manner as to indicate that - activating the elements will cause the table to be sorted.

    - -

    Margin collapsing quirks

    A node is substantial if it is a text node @@ -114277,8 +112872,7 @@ if (s = prompt('What is your name?')) { tfoot*; tr*; script-supporting elements - globals; - sortable + globals HTMLTableElement @@ -114381,7 +112975,6 @@ if (s = prompt('What is your name?')) { rowspan; headers; scope; - sorted; abbr HTMLTableHeaderCellElement @@ -114782,7 +113375,6 @@ if (s = prompt('What is your name?')) { img (if the usemap attribute is present); input (if the type attribute is not in the Hidden state); object (if the usemap attribute is present); - th (for sorting interface th elements) video (if the controls attribute is present) @@ -115705,16 +114297,6 @@ if (s = prompt('What is your name?')) { source Image sizes for different page layouts Valid source size list - - sortable - table - Enables a sorting interface for the table - Boolean attribute - - sorted - th - Column sort direction and ordinality - Set of space-separated tokens, ASCII case-insensitive, consisting of neither, one, or both of "reversed" and a valid non-negative integer greater than zero span col; @@ -116352,12 +114934,6 @@ if (s = prompt('What is your name?')) { show event handler Event handler content attribute - - onsort - HTML elements - sort event handler - Event handler content attribute - onstalled HTML elements @@ -117170,12 +115746,6 @@ INSERT INTERFACES HERE menu elements Fired at a menu element when it is shown as a context menu - - sort - Event - table elements - Fired at table elements before it is sorted; canceling the event cancels the sorting of the table - storage StorageEvent