layuimini 在iframe子菜单上打开新窗口

找到miniTab.js   

 

/**
* 打开新窗口
*/
$('body').on('click', '[layuimini-href]', function () {
var loading = layer.load(0, {shade: false, time: 2 * 1000});
var tabId = $(this).attr('layuimini-href'),
href = $(this).attr('layuimini-href'),
title = $(this).text(),
target = $(this).attr('target');
if(tabId!="modules/monitor/index.html"){
miniTab.delete("modules/monitor/index.html");
}
if(tabId=="bigdata/index.html"){
var isShow = $('.layuimini-tool [data-side-fold]').attr('data-side-fold');
if (isShow == 1) { // 缩放
$('.layuimini-tool [data-side-fold]').attr('data-side-fold', 0);
$('.layuimini-tool [data-side-fold]').attr('class', 'fa fa-indent');
$('.layui-layout-body').removeClass('layuimini-all');
$('.layui-layout-body').addClass('layuimini-mini');
}
// else { // 正常
// $('.layuimini-tool [data-side-fold]').attr('data-side-fold', 1);
// $('.layuimini-tool [data-side-fold]').attr('class', 'fa fa-outdent');
// $('.layui-layout-body').removeClass('layuimini-mini');
// $('.layui-layout-body').addClass('layuimini-all');
// layer.close(window.openTips);
// }
}

var el = $("[layuimini-href='" + href + "']", ".layuimini-menu-left");
layer.close(window.openTips);
if (el.length) {
$(el).closest(".layui-nav-tree").find(".layui-this").removeClass("layui-this");
$(el).parent().addClass("layui-this");
}

if (target === '_blank') {
layer.close(loading);
window.open(href, "_blank");
return false;
}

if (tabId === null || tabId === undefined) tabId = new Date().getTime();
var checkTab = miniTab.check(tabId);
if (!checkTab) {
miniTab.create({
tabId: tabId,
href: href,
title: title,
isIframe: false,
maxTabNum: options.maxTabNum,
});
}
element.tabChange('layuiminiTab', tabId);
layer.close(loading);
});

//这是我新加上的一条  iframe里面的事件 
$("#layuiminiHomeTabIframe iframe").on("load", function(event){//判断 iframe是否加载完成
  $("body",this.contentDocument).on("click", "[layuimini-content-href]", function() {//添加点击事件
    var loading = parent.layer.load(0, {shade: false, time: 2 * 1000});
var tabId = $(this).attr('layuimini-content-href'),
href = $(this).attr('layuimini-content-href'),
title = $(this).attr('data-title'),
target = $(this).attr('target');
if (target === '_blank') {
parent.layer.close(loading);
window.open(href, "_blank");
return false;
}
if (tabId === null || tabId === undefined) tabId = new Date().getTime();
var checkTab = miniTab.check(tabId, true);
if (!checkTab) {
miniTab.create({
tabId: tabId,
href: href,
title: title,
isIframe: true,
maxTabNum: options.maxTabNum,
});
}
parent.layui.element.tabChange('layuiminiTab', tabId);
parent.layer.close(loading);
  });
});
/**
* 在iframe子菜单上打开新窗口
*/
$("body").on('click', '[layuimini-content-href]', function () {
var loading = parent.layer.load(0, {shade: false, time: 2 * 1000});
var tabId = $(this).attr('layuimini-content-href'),
href = $(this).attr('layuimini-content-href'),
title = $(this).attr('data-title'),
target = $(this).attr('target');
if (target === '_blank') {
parent.layer.close(loading);
window.open(href, "_blank");
return false;
}
if (tabId === null || tabId === undefined) tabId = new Date().getTime();
var checkTab = miniTab.check(tabId, true);
if (!checkTab) {
miniTab.create({
tabId: tabId,
href: href,
title: title,
isIframe: true,
maxTabNum: options.maxTabNum,
});
}
parent.layui.element.tabChange('layuiminiTab', tabId);
parent.layer.close(loading);
});

 

 

 

利用miniTab.js 写的方法  在iframe页面中写

/*layuimini-content-href="你的路径"   data-title="标题" */

<div class="card_item" data-title="资源管理" layuimini-content-href="modules/resources/index.html">
  <div>
    <img src="../images/hone_icon/资源管理1.png" >
    <div class="card_span" >资源管理</div>
  </div>
</div>

posted @ 2021-03-26 09:15  小尘XY  阅读(674)  评论(0)    收藏  举报