css - 如何查看元素的大小?

标签 css angularjs angularjs-scope

我正在尝试查看指令元素(指令本身)的宽度。在下面的演示中,我将元素样式设置为 100%,在真实世界的应用程序中,元素通过媒体查询调整大小。

这是我的方法: http://jsfiddle.net/fusio/5zgaj79b/

scope.$watch(
  function() { 
    return element.width()
  }, 
  function(val) { 
    console.log(val) 
  }, 
  true
);

.width() 没有改变吗?

最佳答案

它不触发的原因是,要调用第一个函数,必须触发摘要循环。怎么做?尝试将以下内容添加到您的 fiddle 中:

angular.module('HelloApp', ['components']).run(function($rootScope) {
    $(window).on("resize", function() {
        $rootScope.$apply();
    });
});

对于实际场景,您可能希望将 $apply 的范围限制在特定范围内,以免引起不必要的观察者调用。

关于css - 如何查看元素的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25185734/

相关文章:

javascript - 从自定义指令访问 ng-repeat 索引值

javascript - JavaScript 中的简写 bool 逻辑

angularjs - 如何防止 Angular 指令之间共享作用域?

html - 如何在 Chrome OS/Chromebook 上本地加载静态 html 站点?

css - 如果选中复选框但先设置标签然后输入,如何突出显示标签?

javascript - 使用 css 动画检测太空入侵者的位置

javascript - Node.js:Mongoose 的内部服务器错误

javascript - 为什么指令没有调用我的 Controller 方法?

javascript - 限制 AngularJS 中的 $scope

javascript - 使用 JS 滚动时固定表头