Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery选项卡以编程方式从代码中调用基于URL的选项卡 处境_Javascript_Jquery_Dynamic_Tabs_Jquery Ui Tabs - Fatal编程技术网

Javascript jQuery选项卡以编程方式从代码中调用基于URL的选项卡 处境

Javascript jQuery选项卡以编程方式从代码中调用基于URL的选项卡 处境,javascript,jquery,dynamic,tabs,jquery-ui-tabs,Javascript,Jquery,Dynamic,Tabs,Jquery Ui Tabs,正如您在下面的屏幕截图中所看到的,我的站点有一个区域,它利用选项卡来分割用户仪表板。顶部的选项卡索引被声明为URL,因此jQuery在运行时创建引用。我希望用户能够点击“此处免费内容”链接,系统调用免费内容选项卡。让我们暂时将该URL称为“testserver/user/free content” 问题 现在,我知道如何以编程方式处理这种情况,当选项卡在页面上声明为div并具有我可以分配的静态id时,但在这种情况下,我并不羞于说,在我开始之前,它让我有点卡住了。 如果我在链接上设置了一个ID,

正如您在下面的屏幕截图中所看到的,我的站点有一个区域,它利用选项卡来分割用户仪表板。顶部的选项卡索引被声明为URL,因此jQuery在运行时创建引用。我希望用户能够点击“此处免费内容”链接,系统调用免费内容选项卡。让我们暂时将该URL称为“testserver/user/free content”

问题 现在,我知道如何以编程方式处理这种情况,当选项卡在页面上声明为div并具有我可以分配的静态id时,但在这种情况下,我并不羞于说,在我开始之前,它让我有点卡住了。 如果我在链接上设置了一个ID,jQuery将覆盖它,所以我不能使用这种方法

解决方案的开始 我想的是,很抱歉,现在我没有小提琴,如果我进步了,我会更新这个问题

  • 用户单击链接,jQuery通过检查事件是否具有类(“tab-url-call”)来获取事件
  • 暂时保存URL属性
  • 循环遍历选项卡索引
    • 检查URL属性是否与存储的临时值匹配
    • 如果匹配,请调用此选项卡
    • 这一点让我不知所措
  • 下一个
更新-额外信息 根据要求,这里有一些HTML来演示当前的结构

<div id="user-tabs" class="tabs">
    <ul>
        <li>
            <a href="#tab-user-home">Welcome</a>
        </li>
        <li>
            <a href="testserver/user/free-content">Free content</a>
        </li>
        <li>
            <a href="testserver/user/learning">Learning</a>
        </li>
    </ul>
    
    <div id="tab-user-home">
        <h3>You current have freen content "showing"</h3>
        <p>
            This is just an information box to highlight that the user has an
            option set to show free content and inform them that they can 
            reach it via the tab controls or click
            <a
                class="tab-url-call" 
                href="testserver/user/free-content"
            >
            here for free content
            </a>
        </p>
    </div>
</div>
            

您当前有自由内容“显示” 这只是一个信息框,用于突出显示用户有 选项集显示免费内容并通知他们可以 通过选项卡控件访问或单击


感谢您抽出时间阅读我的问题。

概括地说,您正在寻找的是

//register a click event handler for elements with class tab-url-call
$(document).on('click', '.tab-url-call', function(e){
    e.preventDefault();
    //you need to place the selector for the tab header element here
    //find the anchor element with the same href as the clicked element which is inside the tab header element
    $('tabheader').find('a[href="' + $(this).attr('href') + '"]').click();
})

您可以共享与选项卡相关的html吗?即标题元素