我正在尝试在 AngularJS 中创建一个覆盖(或模态窗口),并且我创建了迄今为止的 html/css 布局并简单地说它看起来像这样
<section class="calendar">
<a open-overlay="overlay-new-calendar">Add New Calendar</a>
</section>
<section class="overlay overlay-new-calendar">
<span class="bg"></span>
<form class="wrap">
<header>
Add a New My Calendar
</header>
<div class="main">
<label>Name<input type="text" required ng-model="newCalendar.calendar_name" /></label>
<label>Color<input type="text" required ng-model="newCalendar.calendar_color" /></label>
</div>
<footer>
<button type="submit">Add</button>
<a close-overlay="overlay-new-calendar">Cancel</a>
</footer>
</form>
</section>
所以这里发生的事情是我有一个锚点<a open-overlay="overlay-new-calendar">Add New Calendar</a>
,我在其中添加了一个指令 open-overlay,我希望将其设为通用,并作为该指令的 attr 以提供要打开的确切覆盖层。现在我尝试了这个
fixEvents.directive('openOverlay', function() {
return function(scope, elem, attr) {
elem.bind('click', function() {
alert(attr.open-overlay);
$('.overlay-new-calendar').show();
});
}
});
但我无法让 attr 返回overlay-new-calendar
。另外,如果有人知道,我该如何做节目,不用 jquery 隐藏 :D 非常感谢,Daniel!