javascript - 将 jquery 函数连接到 bootstrap 的轮播幻灯片事件

标签 javascript jquery twitter-bootstrap

我创建了以下函数:

//Toggle height of header-foto function
function height_toggler() {
    $('body').toggleClass('large-slider small-slider',500);
    $('#height-toggler').find('i').toggleClass('fa-rotate-270 fa-rotate-90');
}

当用户单击按钮时,我调用此函数:

// bind the function to a click on the toggler
$('#height-toggler').click( function() {
    height_toggler();
});

这工作得很好,你可以在 this page 上看到它。

我的客户也希望将此功能绑定(bind)到 Bootstrap Carousel 的 slide event并且仅在具有 100% 高度轮播的页面上。 我想出了以下代码,但是每次轮播滑动时都会触发(我理解)。如何使其仅在页面加载后的第一张幻灯片上触发?

if( $('body').hasClass('large-slider') ) { //only perform this on large sliders
    $('.carousel').on('slide.bs.carousel', function () {
        height_toggler();
    });
}

最佳答案

您可以使用one()方法。

if( $('body').hasClass('large-slider') ) { //only perform this on large sliders
  $('.carousel').one('slide.bs.carousel', function () {
    height_toggler();
  });
}

关于javascript - 将 jquery 函数连接到 bootstrap 的轮播幻灯片事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38268561/

相关文章:

jquery - 以颜色显示 jquery themeroller 图标

twitter-bootstrap - 更改 Bootstrap 插入符号(颜色和位置)

javascript - Dojo AMD 加载器是否确保模块只执行一次?

javascript - JQuery 点击监听器调用得太早

Javascript 如果只能在函数外工作

javascript - 浏览器窗口 100% 宽度之外的左上角像素

html - 如何使 Mailchimp 注册表单 div 居中?

html - Bootstrap col-md 变大是因为div在里面的绝对位置

javascript - Flot:如何在条形图中设置数字样式?

javascript - 如何对 es6 模块进行功能检测