【发布时间】:2017-05-08 17:29:54
【问题描述】:
我正在使用 jQuery mobile(不是 jQuery UI)。我想做的是在不触发点击的情况下更改活动选项卡。
HTML
<div data-role="page" id="settingsPage">
<div data-role="content">
<div data-role="tabs" id="tabs">
<div data-role="navbar">
<ul>
<li><a id="tab0" href="#one" class="ui-btn-active">Tab One</a></li>
<li><a id="tab1" href="#two">Tab Two</a></li>
<li><a id="tab2" href="#three">Tab Three</a></li>
</ul>
</div>
<div id="one" style="display: none" class="ui-body-d ui-content">Tab One content</div>
<div id="two" style="display: none" class="ui-body-d ui-content">Tab Two content</div>
<div id="three" style="display: none" class="ui-body-d ui-content">Tab Three content</div>
</div>
</div>
JS
var tabIndex = 0;
setInterval(function(){
tabIndex++;
if (tabIndex >= 3)
tabIndex = 0;
else if (tabIndex < 0)
tabIndex = 2;
$("#tabs").tabs( "option", "active", tabIndex );
}, 3000);
发生的情况是选项卡内容正在切换,但活动选项卡没有。如何在不启动点击事件和尽可能利用 jQuery Mobile/UI 的情况下切换两者?
【问题讨论】:
-
好的,所以现在确认活动选项卡选择是由 css 完成的,而不是由 option->active 完成的。谢谢奥马尔!
-
tabs 小部件从 jquery-ui 导入 jQM。 ui 不添加活动类,但 jQM 会。这可以像我向您展示的那样修复,或者您可以更改 jQM js 文件中的原始代码。编辑:您可以添加
.focus()jsfiddle.net/Palestinian/aqbbw6zy/2 -
那么另一种方法是在 html 标头中的 jQM 之后/之前导入 jquery-ui 脚本?
-
无需添加jquery-ui;该小部件已包含在 jQM 中。 github.com/jquery/jquery-mobile/tree/master/external/jquery-ui/…
标签: javascript jquery jquery-mobile