This commit is contained in:
parent
6f031c1015
commit
396dd21273
3 changed files with 33 additions and 18 deletions
|
@ -278,7 +278,8 @@ jQuery.extend({
|
||||||
}
|
}
|
||||||
|
|
||||||
// If applicable, access the attribute via the DOM 0 way
|
// If applicable, access the attribute via the DOM 0 way
|
||||||
if ( name in elem && notxml && !special ) {
|
// 'in' checks fail in Blackberry 4.7 #6931
|
||||||
|
if ( (name in elem || elem[ name ] !== undefined) && notxml && !special ) {
|
||||||
if ( set ) {
|
if ( set ) {
|
||||||
// We can't allow the type property to be changed (since it causes problems in IE)
|
// We can't allow the type property to be changed (since it causes problems in IE)
|
||||||
if ( name === "type" && rtype.test( elem.nodeName ) && elem.parentNode ) {
|
if ( name === "type" && rtype.test( elem.nodeName ) && elem.parentNode ) {
|
||||||
|
|
|
@ -594,7 +594,8 @@ jQuery.extend({
|
||||||
// The window, strings (and functions) also have 'length'
|
// The window, strings (and functions) also have 'length'
|
||||||
// The extra typeof function check is to prevent crashes
|
// The extra typeof function check is to prevent crashes
|
||||||
// in Safari 2 (See: #3039)
|
// in Safari 2 (See: #3039)
|
||||||
if ( array.length == null || typeof array === "string" || jQuery.isFunction(array) || (typeof array !== "function" && array.setInterval) ) {
|
// Tweaked logic slightly to handle Blackberry 4.7 RegExp issues #6930
|
||||||
|
if ( array.length == null || typeof array === "string" || jQuery.isFunction(array) || typeof array === "function" || typeof array.setInterval !== "undefined" ) {
|
||||||
push.call( ret, array );
|
push.call( ret, array );
|
||||||
} else {
|
} else {
|
||||||
jQuery.merge( ret, array );
|
jQuery.merge( ret, array );
|
||||||
|
|
|
@ -258,21 +258,28 @@ test("isPlainObject", function() {
|
||||||
|
|
||||||
// Window
|
// Window
|
||||||
ok(!jQuery.isPlainObject(window), "window");
|
ok(!jQuery.isPlainObject(window), "window");
|
||||||
|
|
||||||
var iframe = document.createElement("iframe");
|
|
||||||
document.body.appendChild(iframe);
|
|
||||||
|
|
||||||
window.iframeDone = function(otherObject){
|
try {
|
||||||
// Objects from other windows should be matched
|
var iframe = document.createElement("iframe");
|
||||||
ok(jQuery.isPlainObject(new otherObject), "new otherObject");
|
document.body.appendChild(iframe);
|
||||||
document.body.removeChild( iframe );
|
|
||||||
start();
|
window.iframeDone = function(otherObject){
|
||||||
};
|
// Objects from other windows should be matched
|
||||||
|
ok(jQuery.isPlainObject(new otherObject), "new otherObject");
|
||||||
|
document.body.removeChild( iframe );
|
||||||
|
start();
|
||||||
|
};
|
||||||
|
|
||||||
var doc = iframe.contentDocument || iframe.contentWindow.document;
|
var doc = iframe.contentDocument || iframe.contentWindow.document;
|
||||||
doc.open();
|
doc.open();
|
||||||
doc.write("<body onload='window.parent.iframeDone(Object);'>");
|
doc.write("<body onload='window.parent.iframeDone(Object);'>");
|
||||||
doc.close();
|
doc.close();
|
||||||
|
} catch(e) {
|
||||||
|
document.body.removeChild( iframe );
|
||||||
|
|
||||||
|
ok(true, "new otherObject - iframes not supported");
|
||||||
|
start();
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
test("isFunction", function() {
|
test("isFunction", function() {
|
||||||
|
@ -374,9 +381,15 @@ test("isXMLDoc - HTML", function() {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
var body = jQuery(iframe).contents()[0];
|
var body = jQuery(iframe).contents()[0];
|
||||||
ok( !jQuery.isXMLDoc( body ), "Iframe body element" );
|
|
||||||
} catch(e){
|
try {
|
||||||
ok( false, "Iframe body element exception" );
|
ok( !jQuery.isXMLDoc( body ), "Iframe body element" );
|
||||||
|
} catch(e) {
|
||||||
|
ok( false, "Iframe body element exception" );
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch(e) {
|
||||||
|
ok( true, "Iframe body element - iframe not working correctly" );
|
||||||
}
|
}
|
||||||
|
|
||||||
document.body.removeChild( iframe );
|
document.body.removeChild( iframe );
|
||||||
|
|
Loading…
Reference in a new issue