angularjs if / else语句和窗口宽度

我是AngularJS的新手,最近将它介绍到我的应用程序中。 我试图在我的控制器中重写一些现有的jQuery代码,但有一次,我正在使用:

jQuery的:

if ($(window).width() < 700) { $('.productsHeading').on('click', function() { $(".productsBody").hide(); $(".aboutUsBody").show(); }); } 

我可以在我的DIV中使用ng-hide="productsBody"ng-hide="aboutUsBody" .show() .hide().show() 。这些是通过ng-click="productsheading()" 。但是,我面临的问题是,我该如何处理:

 if ($(window).width() < 700) { 

在AngularJS? 我正在使用AngularJS v1.1.5

在AngularJS中,如果要对HTML或DOM操作进行更改,则建议或最佳实践是使用相同的指令。

写一个指令可能会在下面链接是有帮助的:

窗口内部宽度更改的AngularJS事件

http://jsfiddle.net/jaredwilli/SfJ8c/

指令的HTML

 
window.height: {{windowHeight}}
window.width: {{windowWidth}}

您将找到用于检索元素大小的大多数实现将具有不同的行为,具体取决于浏览器。

您最好的选择是使用jQuery的width方法,它在任何浏览器上都会有相同的结果。

顺便说一下,如果要更改为Angular,则无需完全删除jQuery。

对于某些function,jQuery可能会提供最佳实现。