Skip to content

Commit f7429ed

Browse files
felvhagescottgonzalez
authored andcommitted
Widget: Improve performance of cleanData method
Fixes #9546 Closes gh-1291
1 parent c399f1f commit f7429ed

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

ui/widget.js

+9-2
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,16 @@ var widget_uuid = 0,
2525

2626
$.cleanData = (function( orig ) {
2727
return function( elems ) {
28-
for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) {
28+
var events, elem, i;
29+
for ( i = 0; (elem = elems[i]) != null; i++ ) {
2930
try {
30-
$( elem ).triggerHandler( "remove" );
31+
32+
// Only trigger remove when necessary to save time
33+
events = $._data( elem, "events" );
34+
if ( events && events.remove ) {
35+
$( elem ).triggerHandler( "remove" );
36+
}
37+
3138
// http://bugs.jquery.com/ticket/8235
3239
} catch( e ) {}
3340
}

0 commit comments

Comments
 (0)