我有兴趣将 AngularJS 用于我正在从事的项目。我已经阅读了很多关于它的内容,观看了视频,完成了几个示例应用程序。这一切都是有道理的,我相信这些概念。
我正在做的项目需要做一些 DOM 特殊效果(动态移动页面周围的东西等)并结合一些 D3.js 图表。
我用过很多 jQuery;我明白并喜欢它。我已经使用了足够多的 AngularJS 来获得基础知识。我完全不明白如何$("#my-element").slideUp()
从 Angular 中调用 jQuery 之类的东西。例如:
假设我在某处的页面中有以下 HTML:
<!-- somewhere in app.html -->
<div id="my-element">
<p>Here's some data about your stuff...!</p>
<button id="hider">Hide this (but with a cool transition)</button>
</div>
在网站 JS 中:
// somewhere in app.js ... pretend it's all nice and DRY.
function main () {
$("#my-element button")
.click(function () { $("#my-element").slideUp()});
}
$(main);
关于如何为 Angular 完成与此类似的事情,我能说的最好的方法是:
HTML
<!-- somewhere in app.html -->
<div ng-controller="Data">
<p>Here's some data about your stuff...!</p>
<button ng-click="slideUp()">Hide this (but with a cool transition)</button>
</div>
CSS:
// somewhere in app.css
function Data ($scope) {
$scope.slideUp = function () {
$("#my-element").slideUp();
}
}
不知何故,感觉这不是正确的方法,但我不知道正确的方法是什么。
我看到有一个 AngularUI 项目看起来很整洁......但是“文档”假设读者非常熟悉 Angular,而不是新手。
我完全愿意接受 Angular 的想法,即声明性语法与 html 的数据绑定是可行的方法,我愿意全力以赴并采用样式、约定或其他任何东西。但我不知道如何开始使用不仅仅是简单的演示文稿。
有人可以指点我一个示例项目,它使用(并且最好演示使用):
- AngularJS
- jQuery
如果提到 D3 =) 我并不特别关心 jQuery-UI,但它的存在并没有伤害到我。
笔记
我看到了这个问题,但是对于 Angular 的新手来说,答案再一次没有太大帮助。