我使用Laravel混合来管理我的js文件,这是我的应用程序.js
window.$ = window.jQuery = require('./jquery-1.11.2.min.js');
require('./jquery.easing.1.3.js');
require('./bootstrap.min.js');
require('./SmoothScroll.js');
require('./jquery.scrollTo.min.js');
require('./jquery.localScroll.min.js');
require('./jquery.viewport.mini.js');
require('./jquery.countTo.js');
require('./jquery.appear.js');
require('./jquery.sticky.js');
require('./jquery.parallax-1.1.3.js');
require('./jquery.fitvids.js');
require('./owl.carousel.min.js');
require('./isotope.pkgd.min.js');
require('./imagesloaded.pkgd.min.js');
require('./jquery.magnific-popup.min.js');
require('./gmap3.min.js');
require('./wow.min.js');
require('./masonry.pkgd.min.js');
require('./jquery.simple-text-rotator.min.js');
require('./all.js');
all.js包含所有的逻辑和inits,所以我的问题是一些jQuery插件不起作用:
未捕获的类型错误: $(...(。magnific弹出窗口不是一个函数 at init_lightbox (index.js?id=f95f3419a2325063a526:11289(
当我以传统方式加载我的 js 时<script ...
以与上述所有工作相同的顺序加载,但当我需要时他们抛出错误,请帮忙,谢谢
编辑:
初始化函数在 ducument 准备就绪后触发(全部.js(:
$(document).ready(function(){
$(window).trigger("resize");
init_classic_menu();
init_fullscreen_menu();
init_side_panel();
init_lightbox();
init_parallax();
init_shortcodes();
init_tooltips();
init_counters();
init_team();
initPageSliders();
init_map();
init_wow();
init_masonry();
});
所以解决方案是通过npm安装jQuery,而不是
window.$ = window.jQuery = require('./jquery-1.11.2.min.js');
做
window.$ = window.jQuery = require('jquery');
这已经解决了问题!
看起来 Magnific-Popup 有问题
这是因为 Modernizr 将视频 CSS 类添加到 HTML 元素中,即 与弹出窗口的选择器相同。
您是否碰巧在网站上的任何地方使用类video
?也许Magnific-Popup
不小心瞄准了您的 HTML 元素。