Skip to content
Permalink
Browse files

Core: Refactored .disableSelection() and .enableSelection().

  • Loading branch information...
scottgonzalez committed Sep 1, 2010
1 parent 95a3459 commit 5de8ced5d9e8b18d96cb2e3868123dd41402fc00
Showing with 12 additions and 51 deletions.
  1. +12 −51 ui/jquery.ui.core.js
@@ -115,59 +115,20 @@ $.fn.extend({
}

return 0;
}
});

(function() {
var elem = document.createElement( "div" ),
style = elem.style,
userSelectProp = "userSelect" in style && "userSelect";
},

disableSelection: function() {
return this.bind(
"mousedown.ui-disableSelection selectstart.ui-disableSelection",
function( event ) {
event.preventDefault();
});
},

if ( !userSelectProp ) {
$.each( [ "Moz", "Webkit", "Khtml" ], function( i, prefix ) {
var vendorProp = prefix + "UserSelect";
if ( vendorProp in style ) {
userSelectProp = vendorProp;
return false;
}
});
enableSelection: function() {
return this.unbind( ".ui-disableSelection" );
}
var selectStart = !userSelectProp && "onselectstart" in elem && "selectstart.mouse";

elem = null;

$.fn.extend({
disableSelection: function() {
if ( userSelectProp ) {
this.css( userSelectProp, "none" );
} else {
this.find( "*" ).andSelf().attr( "unselectable", "on" );
}

if ( selectStart ) {
this.bind( selectStart, function() {
return false;
});
}

return this;
},

enableSelection: function() {
if ( userSelectProp ) {
this.css( userSelectProp, "" );
} else {
this.find( "*" ).andSelf().attr( "unselectable", "off" );
}

if ( selectStart ) {
this.unbind( selectStart );
}

return this;
}
});
})();
});

$.each( [ "Width", "Height" ], function( i, name ) {
var side = name === "Width" ? [ "Left", "Right" ] : [ "Top", "Bottom" ],

2 comments on commit 5de8ced

@rdworth

This comment has been minimized.

Copy link
Contributor

replied Sep 1, 2010

Beautiful!

@jzaefferer

This comment has been minimized.

Copy link
Member

replied Sep 1, 2010

Wait, thats all?

Please sign in to comment.
You can’t perform that action at this time.