我有一个模式,其中包含一个带有 2 张带有登录和注册表单的幻灯片的轮播。
我想实现以下目标:
- 当用户单击站点标题中的“登录”链接时,模式应该打开并且轮播应该滑动到“登录”幻灯片(它位于索引 0 处)。
- 当用户单击站点标题中的“注册”链接时,模式应该打开并且轮播应该滑动到“注册”幻灯片(它位于索引 1)
- 每当发生滑动过渡时,模态标题文本都会更改(绑定到轮播的“滑动”事件)
但是,我似乎无法让它发挥作用。我认为问题在于所有这些事件发生的顺序。
这是基本代码:
// Initialize modal
$('.modal').modal()
// Initialize carousel
$('.carousel').carousel()
$('.carousel').carousel('pause') // Pause the carousel so it doesn't auto-rotate
$('.signuplink').on('click', function() {
$('.carousel').carousel(1).on('slid', function() {
$('.modal .modal-title').html('Sign Up');
$('.modal').modal('show');
});
});
但它不起作用。当模态未事先显示时,“滑动”事件永远不会发生。所以我尝试显示模态,然后滑动轮播,绑定到模态的“显示”事件,但是当它确实滑动到下一张幻灯片时,“滑动”事件不会发生。更奇怪的是,模态框上的关闭按钮不再起作用,就像所有事件处理都搞砸了一样……
编辑:第一次显示模态时,似乎没有触发“显示”事件。它仅在我隐藏模式时触发。当我再次打开它时,“显示”似乎在正确的时刻被解雇了。