From c7c5b6b15cd24ae0de95ff576f8ca6b6b8892ced Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Scott=20Gonz=C3=A1lez?= Date: Tue, 9 Aug 2011 11:51:08 -0400 Subject: [PATCH] Widget: Wrap the remove event trigerring in a try/catch. Fixes #7510 - jQuery.data throws a script error in certain circumstances. --- ui/jquery.ui.widget.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/ui/jquery.ui.widget.js b/ui/jquery.ui.widget.js index a0df33e1c..4aa42e0b7 100644 --- a/ui/jquery.ui.widget.js +++ b/ui/jquery.ui.widget.js @@ -14,7 +14,10 @@ if ( $.cleanData ) { var _cleanData = $.cleanData; $.cleanData = function( elems ) { for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) { - $( elem ).triggerHandler( "remove" ); + try { + $( elem ).triggerHandler( "remove" ); + // http://bugs.jquery.com/ticket/8235 + } catch( e ) {} } _cleanData( elems ); }; @@ -25,7 +28,10 @@ if ( $.cleanData ) { if ( !keepData ) { if ( !selector || $.filter( selector, [ this ] ).length ) { $( "*", this ).add( [ this ] ).each(function() { - $( this ).triggerHandler( "remove" ); + try { + $( this ).triggerHandler( "remove" ); + // http://bugs.jquery.com/ticket/8235 + } catch( e ) {} }); } }