EasyUI 的Tab 标签添加右键菜单

简介: 样式:        主要提供右键功能代码。    (只需要提供你需要的js和css就行了) doctype html> 标签右键菜单 ...

样式: 

  

   主要提供右键功能代码。

   (只需要提供你需要的js和css就行了)

<!doctype html>
<html>
<head> 
  <base href="/smile/" /> 
  <title>标签右键菜单</title> 
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  <meta HTTP-EQUIV="Pragma" CONTENT="no-cache"> 
  <meta HTTP-EQUIV="Cache-Control" CONTENT="no-cache"> 
  <meta HTTP-EQUIV="Expires" CONTENT="0"> 
  <link rel="stylesheet" type="text/css" href="/smile/js/easyui/themes/icon.css?ver=1.0031" /> 
  <link rel="stylesheet" type="text/css" href="/smile/js/easyui/themes/gray/easyui.css?ver=1.0031" />  
  <script type="text/javascript" src="/smile/js/jquery.min.js?ver=1.0031"></script> 
  <script type="text/javascript" src="/smile/js/easyui/jquery.easyui.min.js?ver=1.0031"></script> 
 
</head>
<body class="easyui-layout"> 
  <div data-options="region:'west',title:'功能导航菜单',collapsible:false,iconCls:'fa fa-leaf'" style="width: 200px;"> 
   <div id="aa" class="easyui-accordion" data-options="fit:true">
    <div title="菜单一" style="overflow: auto; padding: 5px;" iconCls="fa fa-building"> 
         <ul class="easyui-tree" data-options="onClick:clickTree"> 
         <li data-options="attributes:{'url':'/smile/html/menu1.html'}"><span>菜单一</span></li> 
         </ul> 
    </div> 
   <div title="菜单二" style="overflow: auto; padding: 5px;" iconCls="fa fa-building"> 
         <ul class="easyui-tree" data-options="onClick:clickTree"> 
             <li data-options="attributes:{'url':'/smile/html/menu2.html'}"><span>菜单二</span></li>  
         </ul> 
    </div>
   </div> 
  </div>
  <!--首页  --> 
  <div data-options="region:'center',collapsible:false">
  <div id="mainTabs" class="easyui-tabs" data-options="fit:true,narrow:true">
       <div title="首页" style="overflow:hidden;" data-options="iconCls:'fa fa-home'">
        <div id="myclock" style="margin: 0 auto;width: 400px;" class="clock"></div> 
       </div>
  </div> 
 </div>
  <!--右键菜单栏  -->
   <div id="mm" class="easyui-menu" style="width: 120px;">      
         <div id="mm-tabclosecurrent" name="1"> 关闭当前页</div>
         <div id="mm-tabcloseall" name="2">   全部关闭</div>
         <div id="mm-tabcloseother" name="3">  其他全部关闭</div>
    </div>   
    <script type="text/javascript">
    $(function(){
           //监听右键事件,创建右键菜单
           $('#mainTabs').tabs({
               onContextMenu:function(e, title,index){
                   e.preventDefault();
                   if(index>0){
                       $('#mm').menu('show', {
                           left: e.pageX,
                           top: e.pageY
                       }).data("tabTitle", title);
                   }
               }
           });
           //右键菜单click
           $("#mm").menu({
               onClick : function (item) {
                   closeTab(this, item.name);
               }
           });

   });
    

       function addTab(title, url) {
       if ($('#mainTabs').tabs('exists', title)) {
         $('#mainTabs').tabs('select', title);
       } else {
        var  content = '<iframe  scrolling="auto" frameborder="0"  src="'+ url+'" style="width:100%;height:99%;"></iframe>';
         $('#mainTabs').tabs('add', {
             title: title,          
            content: content,     
            closable: true ,
            cache:true,   
         }); 
       }
      
     }
       

       //  //删除Tabs
      function closeTab(menu, type) {
           var allTabs = $("#mainTabs").tabs('tabs');
           var allTabtitle = [];
           $.each(allTabs, function (i, n) {
               var opt = $(n).panel('options');
               if (opt.closable)
                   allTabtitle.push(opt.title);
           }); 
        var curTabTitle = $(menu).data("tabTitle");
           var curTabIndex = $("#mainTabs").tabs("getTabIndex", $("#mainTabs").tabs("getTab", curTabTitle));
           switch (type) {
               case "1"://关闭当前
                   $("#mainTabs").tabs("close", curTabTitle);
                   return false;
                   break;
               case "2"://全部关闭
                   for (var i = 0; i < allTabtitle.length; i++) {
                       $('#mainTabs').tabs('close', allTabtitle[i]);
                   }
                   break;
               case "3"://关闭其他全部
                   for (var i = 0; i < allTabtitle.length; i++) {
                       if (curTabTitle != allTabtitle[i])
                           $('#mainTabs').tabs('close', allTabtitle[i]);
                   }
                   $('#mainTabs').tabs('select', curTabTitle);
                   break;
           }

       }   
    
     function clickTree(node) {
       if ($(this).tree('isLeaf', node.target)) {
       addTab(node.text, node.attributes.url); 
       } else {
        $(this).tree('toggle', node.target);
       
       }
     } 
     
    </script>
</body>
</html>

 

相关文章
|
测试技术
Easyui 去除jquery-easui tab页div自带滚动条
Easyui 去除jquery-easui tab页div自带滚动条
79 0
|
JavaScript 测试技术 索引
Easyui 关闭jquery-easui tab标签页前触发事件
Easyui 关闭jquery-easui tab标签页前触发事件
75 0
|
JavaScript 测试技术
Easyui 实现点击不同树节点打开不同tab页展示不同datagrid表数据设计
Easyui 实现点击不同树节点打开不同tab页展示不同datagrid表数据设计
84 0
|
JavaScript 前端开发
easyui 后台页面,在Tab中的链接点击后添加一个新TAB的解决方法
1.示例1 新增一个按钮 添加点击事件 onclick="self.parent.addTab('百度','http://www.baidu.com','icon-add')" 如: 打开新TAB 这样点击链接后会增加一个新的TAB     2.
1403 0
|
JavaScript
获取easyui的tab下iframe方法
获取easyui的tab下iframe
1529 0
|
监控
easyUI跨tab刷新datagrid
easyUI跨tab刷新datagrid
1705 0
fbh
|
JavaScript
基于Jquery easyui 选中特定的tab并更新
原文:http://www.cnblogs.com/bohanfu/p/5802138.html  获取选中的 Tab // 获取选中的 tab panel 和它的 tab 对象 var pp = $('#tt').tabs('getSelected'); var tab = pp.panel('options').tab; // 相应的 tab 对象 更新特定的选项卡面板 可使用update方法,param参数包含2个属性: tab: 将被更新的选项卡。
fbh
1048 0
|
JavaScript 索引 前端开发
Jquery EasyUI---Datagrid右键菜单
<p><span style="font-size:18px">   <span style="font-family:KaiTi_GB2312"> 最近在学Jquery EasyUI,现在来说一说EasyUI的DataGrid,一般当我们在实现前端界面的时候,经常在DataGrid</span></span></p> <p><span style="font-family:KaiTi_
2191 0
|
JavaScript 前端开发 索引
easyui学习笔记11—tab标签页和鼠标动作
这篇我们看看标签页是怎么实现的,默认情况下要靠点击切换标签,也可以用鼠标切换标签选项,就是鼠标放在标签上切换。 首先看看引用的资源文件 1.资源文件 Basic Tabs - jQuery EasyUI Demo 这里我们看到还是这几个文件,这里要说一下jquery.
967 0
|
JavaScript 前端开发 HTML5
easyui学习笔记12—tab标签页的添加和删除
这一篇我们来看看标签页的添加和删除动作。我在想看这些例子还不如看文档,文档的内容更加全面,但是文档全部是理论没有实际的操作,看起来很枯燥,文档只能是遇到问题的时候查。easyui的文档写的还是很详细的,这点对开发者很重要。
1151 0