使用JQuery的垂直制表符?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用JQuery的垂直制表符?相关的知识,希望对你有一定的参考价值。

我想在页面左侧而不是顶部选项卡。我已经出于其他原因(效果)加载jQuery,所以我更喜欢将jQuery用于另一个UI框架。搜索“垂直制表符jquery”会产生正在进行中的工作的链接。

是否正在使用垂直标签在浏览器中工作,或者它是如此微不足道,一旦你有了解决方案,发布示例代码似乎不值得?

答案

看看the jQuery UI vertical Tabs Docu。我试试看,它工作正常。

<style type="text/css">
/* Vertical Tabs
----------------------------------*/
.ui-tabs-vertical { width: 55em; }
.ui-tabs-vertical .ui-tabs-nav { padding: .2em .1em .2em .2em; float: left; width: 12em; }
.ui-tabs-vertical .ui-tabs-nav li { clear: left; width: 100%; border-bottom-width: 1px !important; border-right-width: 0 !important; margin: 0 -1px .2em 0; }
.ui-tabs-vertical .ui-tabs-nav li a { display:block; }
.ui-tabs-vertical .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 0; padding-right: .1em; border-right-width: 1px; border-right-width: 1px; }
.ui-tabs-vertical .ui-tabs-panel { padding: 1em; float: right; width: 40em;}
</style> 

<script>
    $(document).ready(function() {
        $("#tabs").tabs().addClass('ui-tabs-vertical ui-helper-clearfix');
        $("#tabs li").removeClass('ui-corner-top').addClass('ui-corner-left');

    });
</script>
另一答案

试试这里:

http://www.sunsean.com/idTabs/

查看“自由”选项卡可能会满足您的需求。

如果你找到自己喜欢的东西,请告诉我。几个月前我就解决了同样的问题并决定自己实施。我喜欢我所做的,但使用标准库可能会很好。

另一答案

我创建了一个垂直菜单,并在页面中间更改了标签。我在代码源上更改了两个单词,并将两个不同的div分开

菜单:

<div class="arrowgreen">
  <ul class="tabNavigation"> 
    <li> <a href="#first" title="Home">Tab 1</a></li>
    <li> <a href="#secund" title="Home">Tab 2</a></li>
  </ul>
</div> 

内容:

<div class="pages">
  <div id="first">
    CONTENT 1
  </div>
  <div id="secund">
    CONTENT 2
  </div>
</div>

代码与div分开工作

$(function () {
    var tabContainers = $('div.pages > div');

    $('div.arrowgreen ul.tabNavigation a').click(function () {
        tabContainers.hide().filter(this.hash).show();

        $('div.arrowgreen ul.tabNavigation a').removeClass('selected');
        $(this).addClass('selected');

        return false;
    }).filter(':first').click();
});
另一答案
//o_O\  (Poker Face) i know its late

只需添加underw css样式

<style type="text/css">

   /* Vertical Tabs ----------------------------------*/
 .ui-tabs-vertical { width: 55em; }
 .ui-tabs-vertical .ui-tabs-nav { padding: .2em .1em .2em .2em; float: left; width: 12em; }
 .ui-tabs-vertical .ui-tabs-nav li { clear: left; width: 100%; border-bottom-width: 1px !important; border-right-width: 0 !important; margin: 0 -1px .2em 0; }
 .ui-tabs-vertical .ui-tabs-nav li a { display:block; }
 .ui-tabs-vertical .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 0; padding-right: .1em; border-right-width: 1px; border-right-width: 1px; }
 .ui-tabs-vertical .ui-tabs-panel { padding: 1em; float: right; width: 40em;}

</style>

更新 ! http://jqueryui.com/tabs/#vertical

另一答案

我不希望垂直标签从水平标签需要不同的javascript。唯一不同的是用于在页面上显示标签和内容的CSS。标签的JS通常只是显示/隐藏/可能加载内容。

另一答案

另一个选项是Matteo Bicocchi的jQuery mb.extruder标签插件:http://pupunzi.open-lab.com/mb-jquery-components/jquery-mb-extruder/

另一答案

看看Listamatic。选项卡在语义上只是以特定方式设置样式的项目列表。您甚至不需要使用javascript来使垂直标签工作,就像Listamatic展示的各种示例一样。

另一答案

超级简单的功能,允许您在这里创建自己的选项卡/手风琴结构:http://jsfiddle.net/nabeezy/v36DF/

bindSets = function (tabClass, tabClassActive, contentClass, contentClassHidden) {
        //Dependent on jQuery
        //PARAMETERS
        //tabClass: 'the class name of the DOM elements that will be clicked',
        //tabClassActive: 'the class name that will be applied to the active tabClass element when clicked (must write your own css)',
        //contentClass: 'the class name of the DOM elements that will be modified when the corresponding tab is clicked',
        //contentClassHidden: 'the class name that will be applied to all contentClass elements except the active one (must write your own css)',
        //MUST call bindSets() after dom has rendered

        var tabs = $('.' + tabClass);
        var tabContent = $('.' + contentClass);
        if(tabs.length !== tabContent.length){console.log('JS bindSets: sets contain a different number of elements')};
        tabs.each(function (index) {
            this.matchedElement = tabContent[index];
            $(this).click(function () {
                tabs.each(function () {
                    this.classList.remove(tabClassActive);
                });
                tabContent.each(function () {
                    this.classList.add(contentClassHidden);
                });
                this.classList.add(tabClassActive);
                this.matchedElement.classList.remove(contentClassHidden);
            });
        })
        tabContent.each(function () {
            this.classList.add(contentClassHidden);
        });

        //tabs[0].click();
    }
bindSets('tabs','active','content','hidden');

以上是关于使用JQuery的垂直制表符?的主要内容,如果未能解决你的问题,请参考以下文章

pyqt5 tabwidget 垂直制表符 水平文本左对齐

如何垂直而不是水平制表符

删除 Redshift 查询中的垂直制表 (vt)

我可以用换行符和制表符格式化我的 JavaScript/JQuery 代码吗?

使用 NodeJS 和 JSDOM/jQuery 从代码片段构建 PHP 页面

markdown 在WordPress中使用jQuery代码片段