【发布时间】:2020-08-05 15:46:57
【问题描述】:
我有一个简单的问题如何使用 Vue 创建一个固定的滚动导航栏
我创建了一个 jQuery 代码,但我想迁移到 Vue
我在名为 navbar.js 的文件中将我的代码更新为 Vue JS
jQuery 代码
$(document).ready(function fixedHeader() {
var windows = $(window);
var screenSize = windows.width();
var sticky = $('#f-navbar');
var $html = $('html');
var $body = $('body');
windows.on('scroll', function () {
var scroll = windows.scrollTop();
var headerHeight = sticky.height();
if (screenSize >= 320) {
if (scroll < headerHeight) {
sticky.removeClass('is-sticky');
} else {
sticky.addClass('is-sticky');
}
}
});
});
Vue JS 代码
const navbar = new Vue({
el: '#f-navbar',
data: function fixedHeader() {
return {
stickyNavbar: {
isSticky: false
}
}
},
mounted() {
},
methods: {
handleScrolling () {
}
}
});
HTML 代码
<nav id="f-navbar" class="navbar navbar-custom navbar-expand-lg navbar-light bg-white"
v-bind:class="stickyNavbar"></nav>
【问题讨论】: