已删除先前的描述,因为它现在不相关。
我从新的gatsby网站开始,能够进行jquery,bootstrap,wow和owl轮播工作。
layout.js
import './expose'
import './main'
expose.js
import 'popper.js'
import 'bootstrap'
import 'animate.css/animate.min.css'
import WOW from 'wowjs/dist/wow.js';
import 'owl.carousel/dist/assets/owl.carousel.css';
import 'owl.carousel';
new WOW(
{
offset: 100,
mobile: true,
}
).init();
main.js
;(function($){
console.log('hello jquery')
console.log($(window).width())
/*-------------------------------------------------------------------------------
Navbar
-------------------------------------------------------------------------------*/
//* Navbar Fixed
function navbarFixed(){
if ( $('.header_area').length ){
$(window).scroll(function() {
var scroll = $(window).scrollTop();
if (scroll){
$(".header_area").addClass("navbar_fixed");
} else {
$(".header_area").removeClass("navbar_fixed");
}
});
};
};
navbarFixed();
var $animation_elements = $('.scroll_animation');
var $window = $(window);
function check_if_in_view() {
console.log('check_if_in_view')
var window_height = $window.height();
var window_top_position = $window.scrollTop();
var window_bottom_position = (window_top_position + window_height);
$.each($animation_elements, function() {
var $element = $(this);
var element_height = $element.outerHeight();
var element_top_position = $element.offset().top;
var element_bottom_position = (element_top_position + element_height);
//check to see if this current container is within viewport
if ((element_bottom_position >= window_top_position) &&
(element_top_position <= window_bottom_position)) {
$element.addClass('in-view');
} else {
$element.removeClass('in-view');
}
});
}
if($(window).width() > 576){
$window.on('scroll resize', check_if_in_view);
$window.trigger('scroll');
}
$('.owl-carousel').owlCarousel();
})(window.jQuery)
jquery
有时有时无效。
现在,问题是wowjs动画仅执行一次。即使刷新页面也无法再次运行它。猫头鹰轮播有相同的问题。它只会出现一次,然后再也不会出现,甚至在页面刷新时也不会出现。如何使jquery
中的main.js
代码始终有效?由于实际文件中包含1000行的jquery和jquery插件代码。
答案 0 :(得分:0)