diff --git a/complete.html b/complete.html index 3e2d379af37..a6ba634377f 100644 --- a/complete.html +++ b/complete.html @@ -64825,14 +64825,54 @@
7.1.6.1 Event handlers< following steps to create a script after setting the content attribute to its new value:

-
  1. Set up a script execution environment for +

    1. Set the corresponding event + handler to null.

    2. + +
    3. Set up a script execution environment for JavaScript.

    4. +
    5. Let body be the event handler content + attribute's new value.

    6. +
    7. -

      Using this script execution environment, create a function - object (as defined in ECMAScript edition 5 section 13.2 Creating - Function Objects), with:

      +

      If body is not parsable as + FunctionBody then abort these steps.

      + +

      FunctionBody is defined in ECMAScript + edition 5 section 13 Function Definition. [ECMA262]

      + +
    8. + +
    9. + +

      If body begins with a Directive Prologue + that contains a Use Strict Directive then let strict be true, otherwise let strict be false.

      + +

      The terms "Directive Prologue" and "Use Strict + Directive" are defined in ECMAScript edition 5 section 14.1 + Directive Prologues and the Use Strict Directive. [ECMA262]

      + +
    10. + +
    11. + +

      If strict is true, and anything in body is a SyntaxError according to the + Strict Mode Restrictions, then abort these steps.

      + +

      The Strict Mode Restrictions are those listed in + ECMAScript edition 5 section 13.1 Strict Mode Restrictions. [ECMA262]

      + +
    12. + +
    13. + +

      Using the script execution environment created above, create a + function object (as defined in ECMAScript edition 5 section 13.2 + Creating Function Objects), with:

      Parameter list FormalParameterList
      @@ -64851,8 +64891,7 @@
      7.1.6.1 Event handlers<
      Function body FunctionBody
      -
      The event - handler content attribute's new value.
      +
      The result of parsing body above.
      Lexical Environment Scope
      @@ -64875,17 +64914,13 @@
      7.1.6.1 Event handlers<
      Boolean flag Strict
      -
      False.
      +
      The value of strict.

      Let this new function be the only entry in the script's list of code entry-points.

    14. -
    15. If the previous steps failed to compile the script, then set - the corresponding event handler - to null and abort these steps.

    16. -
    17. Set up the script's global object, the script's browsing context, the script's document, the script's URL character encoding, diff --git a/index b/index index 288477d568e..0fecff87947 100644 --- a/index +++ b/index @@ -64828,14 +64828,54 @@ interface NavigatorOnLine { following steps to create a script after setting the content attribute to its new value:

      -
      1. Set up a script execution environment for +

        1. Set the corresponding event + handler to null.

        2. + +
        3. Set up a script execution environment for JavaScript.

        4. +
        5. Let body be the event handler content + attribute's new value.

        6. +
        7. -

          Using this script execution environment, create a function - object (as defined in ECMAScript edition 5 section 13.2 Creating - Function Objects), with:

          +

          If body is not parsable as + FunctionBody then abort these steps.

          + +

          FunctionBody is defined in ECMAScript + edition 5 section 13 Function Definition. [ECMA262]

          + +
        8. + +
        9. + +

          If body begins with a Directive Prologue + that contains a Use Strict Directive then let strict be true, otherwise let strict be false.

          + +

          The terms "Directive Prologue" and "Use Strict + Directive" are defined in ECMAScript edition 5 section 14.1 + Directive Prologues and the Use Strict Directive. [ECMA262]

          + +
        10. + +
        11. + +

          If strict is true, and anything in body is a SyntaxError according to the + Strict Mode Restrictions, then abort these steps.

          + +

          The Strict Mode Restrictions are those listed in + ECMAScript edition 5 section 13.1 Strict Mode Restrictions. [ECMA262]

          + +
        12. + +
        13. + +

          Using the script execution environment created above, create a + function object (as defined in ECMAScript edition 5 section 13.2 + Creating Function Objects), with:

          Parameter list FormalParameterList
          @@ -64854,8 +64894,7 @@ interface NavigatorOnLine {
          Function body FunctionBody
          -
          The event - handler content attribute's new value.
          +
          The result of parsing body above.
          Lexical Environment Scope
          @@ -64878,17 +64917,13 @@ interface NavigatorOnLine {
          Boolean flag Strict
          -
          False.
          +
          The value of strict.

          Let this new function be the only entry in the script's list of code entry-points.

        14. -
        15. If the previous steps failed to compile the script, then set - the corresponding event handler - to null and abort these steps.

        16. -
        17. Set up the script's global object, the script's browsing context, the script's document, the script's URL character encoding, diff --git a/source b/source index f4fbffe7780..788af92a046 100644 --- a/source +++ b/source @@ -73751,14 +73751,60 @@ interface NavigatorOnLine {

            +
          1. Set the corresponding event + handler to null.

          2. +
          3. Set up a script execution environment for JavaScript.

          4. +
          5. Let body be the event handler content + attribute's new value.

          6. +
          7. -

            Using this script execution environment, create a function - object (as defined in ECMAScript edition 5 section 13.2 Creating - Function Objects), with:

            +

            If body is not parsable as + FunctionBody then abort these steps.

            + +

            FunctionBody is defined in ECMAScript + edition 5 section 13 Function Definition. [ECMA262]

            + +
          8. + +
          9. + +

            If body begins with a Directive Prologue + that contains a Use Strict Directive then let strict be true, otherwise let strict be false.

            + +

            The terms "Directive Prologue" and "Use Strict + Directive" are defined in ECMAScript edition 5 section 14.1 + Directive Prologues and the Use Strict Directive. [ECMA262]

            + +
          10. + +
          11. + +

            If strict is true, and anything in body is a SyntaxError according to the + Strict Mode Restrictions, then abort these steps.

            + +

            The Strict Mode Restrictions are those listed in + ECMAScript edition 5 section 13.1 Strict Mode Restrictions. [ECMA262]

            + +
          12. + +
          13. + +

            Using the script execution environment created above, create a + function object (as defined in ECMAScript edition 5 section 13.2 + Creating Function Objects), with:

            @@ -73787,8 +73833,7 @@ interface NavigatorOnLine {
            Function body FunctionBody
            -
            The event - handler content attribute's new value.
            +
            The result of parsing body above.
            Lexical Environment Scope
            @@ -73819,7 +73864,7 @@ interface NavigatorOnLine {
            Boolean flag Strict
            -
            False.
            +
            The value of strict.
            @@ -73828,10 +73873,6 @@ interface NavigatorOnLine {
          14. -
          15. If the previous steps failed to compile the script, then set - the corresponding event handler - to null and abort these steps.

          16. -
          17. Set up the script's global object, the script's browsing context, the script's document, the script's URL character encoding,