Search and Top Navigation
#15100 new bug ()
Opened November 18, 2016 02:27AM UTC
Last modified November 18, 2016 03:00AM UTC
Draggable: Cause focus and blur triggered every time when clicking the element
Reported by: | flyoverL | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | none |
Component: | ui.draggable | Version: | 1.12.1 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
jsBin: http://jsbin.com/qahiyib/2/edit?html,js,console,output
At the version 1.12.1,
Every time when clicking a draggable element, its focus event is always triggered.
Before the version 1.11.4,
Every time when clicking a draggable element, both focus and blur event are always triggered.
I think the following source of draggable in JqueryUi may cause this problem:
_mouseUp: function( event ) { this._unblockFrames(); //If the ddmanager is used for droppables, inform the manager that dragging has stopped (see #5003) if ( $.ui.ddmanager ) { $.ui.ddmanager.dragStop(this, event); } var activeElement = $.ui.safeActiveElement( this.document[ 0 ] ); // Only need to focus if the event occurred on the draggable itself, see #10527 //if ( this.handleElement.is( event.target ) ) { if (this.handleElement.is( event.target)) { // The interaction is over; whether or not the click resulted in a drag, focus the element this.element.focus(); } return $.ui.mouse.prototype._mouseUp.call(this, event); }
Attachments (0)
Change History (1)
Changed November 18, 2016 03:00AM UTC by comment:1
description: | jsBin: http://jsbin.com/qahiyib/2/edit?html,js,console,output \ \ At the version 1.12.1, \ Every time when clicking a draggable element, its focus event is always triggered. \ \ Before the version 1.11.4, \ Every time when clicking a draggable element, both focus and blur event are always triggered. \ \ I think the following source of draggable in JqueryUi may cause this problem: \ \ _mouseUp: function( event ) { \ this._unblockFrames(); \ \ //If the ddmanager is used for droppables, inform the manager that dragging has stopped (see #5003) \ if ( $.ui.ddmanager ) { \ $.ui.ddmanager.dragStop(this, event); \ } \ \ var activeElement = $.ui.safeActiveElement( this.document[ 0 ] ); \ // Only need to focus if the event occurred on the draggable itself, see #10527 \ //if ( this.handleElement.is( event.target ) ) { \ if (this.handleElement.is( event.target)) { \ // The interaction is over; whether or not the click resulted in a drag, focus the element \ this.element.focus(); \ } \ \ return $.ui.mouse.prototype._mouseUp.call(this, event); \ } → jsBin: http://jsbin.com/qahiyib/2/edit?html,js,console,output \ \ At the version 1.12.1, \ Every time when clicking a draggable element, its focus event is always triggered. \ \ Before the version 1.11.4, \ Every time when clicking a draggable element, both focus and blur event are always triggered. \ \ I think the following source of draggable in JqueryUi may cause this problem: \ \ {{{#!js \ _mouseUp: function( event ) { \ this._unblockFrames(); \ \ //If the ddmanager is used for droppables, inform the manager that dragging has stopped (see #5003) \ if ( $.ui.ddmanager ) { \ $.ui.ddmanager.dragStop(this, event); \ } \ \ var activeElement = $.ui.safeActiveElement( this.document[ 0 ] ); \ // Only need to focus if the event occurred on the draggable itself, see #10527 \ //if ( this.handleElement.is( event.target ) ) { \ if (this.handleElement.is( event.target)) { \ // The interaction is over; whether or not the click resulted in a drag, focus the element \ this.element.focus(); \ } \ \ return $.ui.mouse.prototype._mouseUp.call(this, event); \ } \ }}} |
---|