@@ -41,8 +41,10 @@ function findInArray(array, callback) {
4141 }
4242}
4343
44+ var matchesSelectorFunc = '' ;
4445function matchesSelector ( el , selector ) {
45- var method = findInArray ( [
46+ if ( ! matchesSelectorFunc ) {
47+ matchesSelectorFunc = findInArray ( [
4648 'matches' ,
4749 'webkitMatchesSelector' ,
4850 'mozMatchesSelector' ,
@@ -51,8 +53,9 @@ function matchesSelector(el, selector) {
5153 ] , function ( method ) {
5254 return isFunction ( el [ method ] ) ;
5355 } ) ;
56+ }
5457
55- return el [ method ] . call ( el , selector ) ;
58+ return el [ matchesSelectorFunc ] . call ( el , selector ) ;
5659}
5760
5861/**
@@ -187,8 +190,10 @@ function snapToGrid(grid, pendingX, pendingY) {
187190}
188191
189192// Useful for preventing blue highlights all over everything when dragging.
190- var userSelectStyle = ';user-select: none;-webkit-user-select:none;-moz-user-select:none;' +
191- '-o-user-select:none;-ms-user-select:none;' ;
193+ var userSelectStyle = ';user-select: none;' ;
194+ if ( browserPrefix ) {
195+ userSelectStyle += '-' + browserPrefix . toLowerCase ( ) + '-user-select: none;' ;
196+ }
192197
193198function addUserSelectStyles ( draggable ) {
194199 if ( ! draggable . props . enableUserSelectHack ) return ;
@@ -206,14 +211,13 @@ function createCSSTransform(style) {
206211 // Replace unitless items with px
207212 var x = style . x + 'px' ;
208213 var y = style . y + 'px' ;
209- return {
210- transform : 'translate(' + x + ',' + y + ')' ,
211- WebkitTransform : 'translate(' + x + ',' + y + ')' ,
212- OTransform : 'translate(' + x + ',' + y + ')' ,
213- msTransform : 'translate(' + x + ',' + y + ')' ,
214- MozTransform : 'translate(' + x + ',' + y + ')'
215- } ;
214+ var out = { transform : 'translate(' + x + ',' + y + ')' } ;
215+ // Add single prefixed property as well
216+ if ( browserPrefix ) {
217+ out [ browserPrefix + 'Transform' ] = out . transform ;
216218 }
219+ return out ;
220+ }
217221
218222
219223//
0 commit comments