方法一:点击后,让button的状态变为disable
js指令:
.directive('clickAndDisable', function() {    return {      scope: {        clickAndDisable: '&'      },      link: function(scope, iElement, iAttrs) {        iElement.bind('click', function() {          iElement.prop('disabled',true);          scope.clickAndDisable().finally(function() {            iElement.prop('disabled',false);          })        });      }    };  })html:
方法二:在app.config里面,重写ng-click事件,设置一定事件内不能重复点击
$provide.decorator('ngClickDirective',['$delegate','$timeout', function ($delegate,$timeout) { //记得在config里注入$provide      var original = $delegate[0].compile;      var delay = 500;//设置间隔时间      $delegate[0].compile = function (element, attrs, transclude) {        var disabled = false;        function onClick(evt) {          if (disabled) {            evt.preventDefault();            evt.stopImmediatePropagation();          } else {            disabled = true;            $timeout(function () { disabled = false; }, delay, false);          }        }        //  scope.$on('$destroy', function () { iElement.off('click', onClick); });        element.on('click', onClick);        return original(element, attrs, transclude);      };      return $delegate;    }]);以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。
新闻热点
疑难解答