1
我试图实现一个窗口调整大小自定义指令,它工作正常。自定义指令不工作,如果我更改指令的名称
问题是,它只能如果我使用的指令名称作为调整大小。 否则,如果我使用不同的名称作为windowsize,它只会在页面刷新时触发。
这里是控制器代码
var app = angular.module('miniapp', []);
function AppController($scope) {
/* Logic goes here */
}
> > app.directive('windowsize', function($window){
> return function(scope,element){
> var w=angular.element($window);
> scope.getWindowDimension=function(){
> return{
> 'w': w.width()
> };
> };
> scope.$watch(scope.getWindowDimension, function (newValue, oldValue) {
> scope.windowWidth = newValue.w;
> console.log(scope.windowWidth);
>
> }, true);
> w.bind('windowsize', function() {
> scope.$apply();
> });
> };
> })
html code
<div ng-app="miniapp" ng-controller="AppController" windowsize>
window.height: {{windowHeight}}
<br />window.width: {{windowWidth}}
<br />
</div>
你刷新前得到的任何错误? –
你应该尝试w.bind('resize')而不是w.bind('windowsize') –
我没有收到任何错误。如果我替换指令名称windowsize来调整它的工作正常。 @SaEChowdary –