Bug Tracker

Ticket #9129 (closed bug: fixed)

Opened 4 years ago

Last modified 3 years ago

jQuery does not support enumerated attributes such as contenteditable

Reported by: timmywil Owned by: timmywil
Priority: blocker Milestone: 1.6.1
Component: attributes Version: 1.6
Keywords: Cc:
Blocking: Blocked by:

Description

 http://www.w3.org/TR/2008/WD-html5-20080610/semantics.html#enumerated

I see no way around creating a regex of boolean attributes which are boolean by spec so that we do not interfere with enumerated attributes. The properties for enumerated attributes should actually be "true", "false", and "" (instead of same name, existent, empty string, and removed as in boolean attributes) and we can make this easy for our users with a regex.

The regex is also required when setting html5 boolean attributes, where those corresponding properties are undefined in browsers that do not support html5, so the boolean property check fails (for instance autofocus).

#9123 is related.

I think this will make things much simpler and true to spec, and actually be faster (once the regex is built).

Change History

comment:1 Changed 4 years ago by timmywil

  • Owner set to timmywil
  • Priority changed from undecided to blocker
  • Status changed from new to assigned
  • Component changed from unfiled to attributes
  • Milestone changed from 1.next to 1.6.1

comment:2 Changed 4 years ago by timmywil

  • Status changed from assigned to closed
  • Resolution set to fixed

Construct boolHook and rboolean regex to deal with boolean attributes. Fixes #9129. Fixes #9123.

  • Construct regex for all attributes which are boolean attributes by specification.

+ This allows us to do what users expect with enumerated attributes and allows us to no longer complicate the issue.

+ People are just too confused with passing "true" instead of true when they should, so we won't have to worry about that anymore.

comment:2 Changed 4 years ago by timmywil

#9105 is a duplicate of this ticket.

Note: See TracTickets for help on using tickets.