* Fixed IE ID selectors selecting by the name attribute and added tests
* Added href attribute test to test suite * Updated Changelog
This commit is contained in:
parent
4259b02c99
commit
44599e174b
4 changed files with 20 additions and 7 deletions
|
@ -223,11 +223,15 @@ jQuery.extend({
|
|||
if ( m[1] == "#" && ret[ret.length-1].getElementById ) {
|
||||
// Optimization for HTML document case
|
||||
var oid = ret[ret.length-1].getElementById(m[2]);
|
||||
|
||||
// Do a quick check for the existence of the actual ID attribute
|
||||
// to avoid selecting by the name attribute in IE
|
||||
if ( jQuery.browser.msie && oid && oid.id != m[2] )
|
||||
oid = jQuery('[@id="'+m[2]+'"]', ret[ret.length-1])[0];
|
||||
|
||||
// Do a quick check for node name (where applicable) so
|
||||
// that div#foo searches will be really fast
|
||||
ret = r = oid &&
|
||||
(!m[3] || jQuery.nodeName(oid, m[3])) ? [oid] : [];
|
||||
ret = r = oid && (!m[3] || jQuery.nodeName(oid, m[3])) ? [oid] : [];
|
||||
|
||||
} else {
|
||||
// Pre-compile a regular expression to handle class searches
|
||||
|
|
|
@ -11,7 +11,7 @@ test("expressions - element", function() {
|
|||
});
|
||||
|
||||
test("expressions - id", function() {
|
||||
expect(11);
|
||||
expect(13);
|
||||
t( "ID Selector", "#body", ["body"] );
|
||||
t( "ID Selector w/ Element", "body#body", ["body"] );
|
||||
t( "ID Selector w/ Element", "ul#first", [] );
|
||||
|
@ -25,7 +25,11 @@ test("expressions - id", function() {
|
|||
t( "All Children of ID", "#foo/*", ["sndp", "en", "sap"] );
|
||||
t( "All Children of ID with no children", "#firstUL/*", [] );
|
||||
|
||||
t( "ID selector with non-existant ancestor", "#asdfasdf #foobar", [] );
|
||||
$('<a name="tName1">tName1 A</a><a name="tName2">tName2 A</a><div id="tName1">tName1 Div</div>').appendTo('#main');
|
||||
ok( $("#tName1")[0].id == 'tName1', "ID selector with same value for a name attribute" );
|
||||
ok( $("#tName2").length == 0, "ID selector non-existing but name attribute on an A tag" );
|
||||
|
||||
t( "ID selector with non-existant ancestor", "#asdfasdf #foobar", [] ); // bug #986
|
||||
});
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue