mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2026-03-13 10:22:08 +08:00
fix(popup): focus popup. Fixes #820
This commit is contained in:
15
js/ext/angular/src/service/ionicPopup.js
vendored
15
js/ext/angular/src/service/ionicPopup.js
vendored
@@ -131,16 +131,28 @@ angular.module('ionic.service.popup', ['ionic.service.templateLoad'])
|
||||
}
|
||||
};
|
||||
|
||||
var focusLastButton = function(popup) {
|
||||
var buttons, lastButton;
|
||||
buttons = popup.el.querySelectorAll('button');
|
||||
lastButton = buttons[buttons.length-1];
|
||||
if(lastButton) {
|
||||
lastButton.focus();
|
||||
}
|
||||
}
|
||||
|
||||
// Show a single popup
|
||||
var showSinglePopup = function(popup, opts) {
|
||||
var _this = this;
|
||||
|
||||
ionic.requestAnimationFrame(function() {
|
||||
|
||||
hideBody(popup);
|
||||
positionPopup(popup);
|
||||
popup.el.classList.remove('popup-hidden');
|
||||
popup.el.classList.add('popup-showing');
|
||||
popup.el.classList.add('active');
|
||||
|
||||
focusLastButton(popup);
|
||||
});
|
||||
};
|
||||
|
||||
@@ -150,12 +162,15 @@ angular.module('ionic.service.popup', ['ionic.service.templateLoad'])
|
||||
popup.el.classList.remove('popup-hidden');
|
||||
popup.el.classList.add('popup-showing');
|
||||
popup.el.classList.add('active');
|
||||
focusLastButton(popup);
|
||||
});
|
||||
};
|
||||
|
||||
// Hide a single popup
|
||||
var hideSinglePopup = function(popup) {
|
||||
ionic.requestAnimationFrame(function() {
|
||||
var buttons, lastButton;
|
||||
|
||||
popup.el.classList.remove('active');
|
||||
popup.el.classList.add('popup-hidden');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user