Bug Tracker

Ticket #1084: selector.js.diff

File selector.js.diff, 1008 bytes (added by john, 16 years ago)

It's never just one character ;-) this patch makes sure that there's total coverage of the tag names and the ability to use both underscores and unicode.

  • src/selector/selector.js

     
    7777
    7878                // Match: :even, :last-chlid, #id, .class
    7979                new RegExp("^([:.#]*)(" +
    80                         ( jQuery.chars = "(?:[\\w\u0128-\uFFFF*-]|\\\\.)" ) + "+)")
     80                        ( jQuery.chars = "(?:[\\w\u0128-\uFFFF*_-]|\\\\.)" ) + "+)")
    8181        ],
    8282
    8383        token: [
     
    149149
    150150                        // An attempt at speeding up child selectors that
    151151                        // point to a specific element tag
    152                         var re = /^[\/>]\s*([\w*-]+)/;
     152                        var re = new RegExp("^[/>]\\s*(" + jQuery.chars + "+)");
    153153                        var m = re.exec(t);
    154154
    155155                        if ( m ) {
     
    204204
    205205                                } else {
    206206                                        // Optomize for the case nodeName#idName
    207                                         var re2 = new RegExp("^(\\w+)(#)(" + jQuery.chars + "+)");
     207                                        var re2 = new RegExp("^(" + jQuery.chars + "+)(#)(" + jQuery.chars + "+)");
    208208                                        var m = re2.exec(t);
    209209                                       
    210210                                        // Re-organize the results, so that they're consistent