2015-04-24 1 views
2

J'ai écrit une directive qui ne fonctionnait pas dans firefox (version 36.00).La directive autoFocus ne fonctionne pas dans firefox

cela devrait être la même chose avec atuofocus attribut HTML 5.

Voici le code:

app.directive('autoFocus', function($timeout) { 
    return { 
     restrict: 'AC', 
     link: function(_scope, _element) { 
      $timeout(function(){ 
       _element[0].focus(); 
      }, 0); 
     } 
    }; 
}); 

DEMO

Toute idée? Merci

+1

Il peut s'agir de jsFiddle. [Ici] (http://jsbin.com/wabulevapa/1/edit?html,js,output), j'ai collé votre code exact dans jsBin et cela a fonctionné. – Tom

+0

ne fonctionne toujours pas sur firefox – sani

+0

Intéressant, quelle version de Firefox? Fonctionne pour moi dans la nuit – Tom

Répondre

2

J'ai eu le même problème que vous, vous avez besoin pour Firefox une solution de contournement, l'envelopper dans une montre:

_scope.$watch('autoFocus', function (value) { 
     if (value) { 
      _element[0].focus(); 
     } 
    }); 

Cela devrait certainement résoudre votre problème.

+0

pouvez-vous faire un violon? – sani