var topWindow = $(window.parent.document); var videoListIframe = $('.RuoYi_iframe[data-id="/video/list"]', topWindow)[0] videoListIframe.contentWindow.hidePlugin(); //隐藏插件
应该不会啊,hidePlugin(); 是什么函数?
你调用下videoListIframe.contentWindow.页面中别的函数看看。
您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
您好,调用别的函数也一样,函数里什么都不执行也一样;这些代码是在点击菜单的时候调用的
全局index.js文件
$('.menuItem').on('click', menuItem);
function menuItem() {
// 获取标识数据
var dataUrl = $(this).attr('href'),
dataIndex = $(this).data('index'),
menuName = $.trim($(this).text()),
flag = true;
$(".nav ul li, .nav li").removeClass("selected");
$(this).parent("li").addClass("selected");
if (dataUrl == undefined || $.trim(dataUrl).length == 0) return false;
showHideVideoList(dataUrl); // ←←在这里
showHideVideoModal(dataUrl);
showHideVideoMobile(dataUrl);
// 选项卡菜单已存在
$('.menuTab').each(function() {
if ($(this).data('id') == dataUrl) {
if (!$(this).hasClass('active')) {
$(this).addClass('active').siblings('.menuTab').removeClass('active');
scrollToTab(this);
// 显示tab对应的内容区
$('.mainContent .RuoYi_iframe').each(function() {
if ($(this).data('id') == dataUrl) {
$(this).show().siblings('.RuoYi_iframe').hide();
return false;
}
});
}
//再次点击菜单从新刷新页面
refreshTab();
flag = false;
return false;
}
});
// 选项卡菜单不存在
if (flag) {
var str = '<a href="javascript:;" class="active menuTab" data-id="' + dataUrl + '">' + menuName + ' <i class="fa fa-times-circle"></i></a>';
$('.menuTab').removeClass('active');
// 添加选项卡对应的iframe
var str1 = '<iframe class="RuoYi_iframe" name="iframe' + dataIndex + '" width="100%" height="100%" src="' + dataUrl + '" frameborder="0" data-id="' + dataUrl + '" seamless></iframe>';
$('.mainContent').find('iframe.RuoYi_iframe').hide().parents('.mainContent').append(str1);
$.modal.loading("数据加载中,请稍后...");
$('.mainContent iframe:visible').load(function () {
$.modal.closeLoading();
});
// 添加选项卡
$('.menuTabs .page-tabs-content').append(str);
scrollToTab($('.menuTab.active'));
}
return false;
}
// 显示隐藏视频列表页面的插件
function showHideVideoList(currentId){
// var topWindow = $(window.parent.document);
var videoListIframe = $('.RuoYi_iframe[data-id="/video/list"]', topWindow)[0]
// 如果存在 data-id = /video/list 的iframe 选项卡
if(typeof(videoListIframe)!="undefined"){
// 如果切换的选项卡不是视频列表,则隐藏插件
if("/video/list" != currentId) {
console.log("隐藏插件")
videoListIframe.contentWindow.hidePlugin(); //隐藏插件
}else{
console.log("显示插件")
videoListIframe.contentWindow.showPlugin(); //显示插件
}
}
}
iframe: data-id = "/video/list"页面:
// 隐藏插件
function hidePlugin(){
if (oWebControl != null){
oWebControl.JS_HideWnd(); // 先让窗口隐藏,规避可能的插件窗口滞后于浏览器消失问题
}
}
// 显示插件
function showPlugin(){
if (oWebControl != null){
oWebControl.JS_ShowWnd(); // 先让窗口隐藏,规避可能的插件窗口滞后于浏览器消失问题
}
}
其实在切换项目里面的选项卡时也会调用这些方法,但是不会出现全屏的问题:
// 点击选项卡菜单
function activeTab() {
if (!$(this).hasClass('active')) {
var currentId = $(this).data('id');
showHideVideoList(currentId);
showHideVideoModal(currentId);
showHideVideoMobile(currentId);
// 显示tab对应的内容区
$('.mainContent .RuoYi_iframe').each(function() {
if ($(this).data('id') == currentId) {
$(this).show().siblings('.RuoYi_iframe').hide();
return false;
}
});
$(this).addClass('active').siblings('.menuTab').removeClass('active');
scrollToTab(this);
}
}
// 点击选项卡菜单
$('.menuTabs').on('click', '.menuTab', activeTab);