我有它在Safari上運行良好,現在和並不總是在鉻工作:
app.controller(.... function($window){
$window.focus();
$window.onfocus = function(){
$scope.inFocus = true;
};
$window.onblur = function(){
console.log("onblur");
$scope.inFocus = false;
};
});
的的console.log並不總是觸發。我在想,如果這是一個錯誤或我做錯了什麼?
更新:我嘗試了@Gabe給出的解決方案。它仍然有時會崩潰,我想知道是否有其他行動干擾它。它確實看起來是隨機的,但...
更新2:我仍然不知道它如何被卡住了,但我知道如何得到它粘住:
- 我在窗口中點擊一個輸入集中它。
- 我在輸入之外單擊以忽略焦點。
- 我切換標籤並返回。它再次工作。使用API爲
angular.element
的[onblur事件不與谷歌瀏覽工作]可能重複(http://stackoverflow.com/questions/2407679/onblur -event-not-working-with-google-chrome) –
@JonathanRowny你的鏈接表示支持。除此之外,它在鉻合金中「有時」起作用。不知道什麼打破了。 –
控制器在哪裏?我想如果這是在特定的路線上,事件可能會被清理乾淨。 –