Jquery mmenu js菜单没有';在我加载页面之前无法工作,turbolinks不会';不要加载mmenu js
我面临turbolinks的问题,在mmenu js侧菜单正常工作之前,我必须刷新我的页面。这是我的代码: $(document).on('turbolinks:load',function(){Jquery mmenu js菜单没有';在我加载页面之前无法工作,turbolinks不会';不要加载mmenu js,jquery,ruby-on-rails-6,turbolinks,mmenu,Jquery,Ruby On Rails 6,Turbolinks,Mmenu,我面临turbolinks的问题,在mmenu js侧菜单正常工作之前,我必须刷新我的页面。这是我的代码: $(document).on('turbolinks:load',function(){ //移动Mmenu var$menu=$(“导航菜单”).mmenu({ “扩展”:[“pagedim黑色”], 柜台:错, 键盘导航:{ 启用:对, 增强:是的 }, 导航栏:{ 标题:“菜单” }, 导航栏:[{位置:'bottom',内容:['']}]}, { //配置 克隆人:是的, 类名:{
//移动Mmenu
var$menu=$(“导航菜单”).mmenu({
“扩展”:[“pagedim黑色”],
柜台:错,
键盘导航:{
启用:对,
增强:是的
},
导航栏:{
标题:“菜单”
},
导航栏:[{位置:'bottom',内容:['']}]},
{
//配置
克隆人:是的,
类名:{
固定元件:{
修正:“菜单2”,
粘性:“粘性”
}
}
});
var$icon=$(“#汉堡”);
var API=$menu.data(“mmenu”);
$icon.on(“单击”,函数(){
API.open();
});
绑定(“打开:完成”,函数(){
setTimeout(函数(){
$icon.addClass(“处于活动状态”);
}, 100);
});
绑定(“关闭:完成”,函数(){
setTimeout(函数(){
$icon.removeClass(“处于活动状态”);
}, 100);
});
);我不确定是否有更多的MMENUJ,但有一个Turbolink包装:
document.addEventListener(
“DOMContentLoaded”,()=>{
新菜单(“我的菜单”{
包装:[“涡轮链接”]
});
}
);
它做什么
使用“turbolinks”包装器将允许在导航到新页面“turbolinks方式”后重新启动菜单
如果存在另一个mmenu,则必须重置脚本希望提供的菜单状态:
document.addEventListener(“turbolinks:before cache”,function()){
//差不多
$mmenu.destroy()
})
// Mobile Mmenu
var $menu = $("nav#menu").mmenu({
"extensions": ["pagedim-black"],
counters: false,
keyboardNavigation: {
enable: true,
enhance: true
},
navbar: {
title: 'MENU'
},
navbars: [{position:'bottom',content: ['<a href="#0">© 2020 Azalearn</a>']}]},
{
// configuration
clone: true,
classNames: {
fixedElements: {
fixed: "menu_2",
sticky: "sticky"
}
}
});
var $icon = $("#hamburger");
var API = $menu.data("mmenu");
$icon.on("click", function () {
API.open();
});
API.bind("open:finish", function () {
setTimeout(function () {
$icon.addClass("is-active");
}, 100);
});
API.bind("close:finish", function () {
setTimeout(function () {
$icon.removeClass("is-active");
}, 100);
});