我有一段代码会多次弹出,而将焦点设置在按钮单击上会触发对话框弹出。
为限制多个弹出窗口,我在第一次弹出窗口后立即添加了document.activeElement.blur()
。
关闭弹出窗口后,我需要将焦点设置回主页,在那里我有Enter键的按键事件,该事件将在按键时执行save()函数。
这是我的代码:
this.showChannelHistory = function (title, message) {
var channelHistoryData =channelHistoryData;
var templateURL = 'partials/wireless/channelHistory.html?v={version_number}';
var defaultButtons = [{result:'ok', label: 'OK', cssClass: 'btn'}/* ,{result:'cancel', label: 'Cancel', cssClass: 'btn'} */];
var msgBox = new $dialog.dialog({
dialogFade: true,
backdropClick: false,
templateUrl: templateURL,
controller: 'MessageBoxController',
dialogClass: 'modal analyzer',
resolve:
{
model: function () {
return {
title: title,
message: message,
buttons: defaultButtons,
};
}
}
});
**document.activeElement.blur();**
return msgBox.open();
};}]);
上面是我处理模糊事件的service.js代码。
下面是控制器代码,我在其中使用名为“ security Tips.showChannelHistory”的指令将对话框打开。
$scope.showChannelHistory = function() {
var channelHistoryData = [];
$scope.channel2GHistoryData = ChannelHistory.get({id: 0}, function (data2g) {
ChannelHistory.get({id: 1}, function (data5g) {
channelHistoryData = buildChannelHistoryModel(data2g.history, data5g.history);
securityTips.showChannelHistory("", channelHistoryData);
console.log(document.activeElement);
})
});
};
我需要一种在对话框关闭后将焦点移回主页的方法