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>
、オープン オーバーレイ ディレクティブを追加するアンカーがあり、それをジェネリックにし、そのディレクティブに 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 どうもありがとう、ダニエル!