0
首次为个人项目测试UI选项卡。包括我到目前为止。我需要加载2个独立的脚本,当我点击Tab 2和Tab 3时创建一个div。我之前在使用jQuery getScript时做了这些,当时我有一些链接的onclick函数。使用UI标签可以做到这一点吗?如果是这样,怎么样?jQuery UI选项卡获取选项卡上的脚本单击和页面刷新
<li><a onclick="loadTabtwo()">Tab 2</a></li>
<li><a onclick="loadTabthree()">Tab 3</a></li>
function loadTabtwo() {
$.getScript("//tab2.js");
}
function loadTabthree() {
$.getScript("//tab3.js");
}
这里是我的功能激活标签,并有刷新页面的当前标签刷新。
jQuery(function($) {
var index = 'qpsstats-active-tab';
var dataStore = window.sessionStorage;
var oldIndex = 0;
try {
oldIndex = dataStore.getItem(index);
} catch(e) {}
$("#tabs").tabs({
active: oldIndex,
activate: function(event, ui) {
var newIndex = ui.newTab.parent().children().index(ui.newTab);
try {
dataStore.setItem(index, newIndex);
} catch(e) {}
}
});
});
这里是HTML
<div id="tabs">
<ul>
<li><a href="#tabs-1">Tab 1</a></li>
<li><a href="#tabs-2">Tab 2</a></li>
<li><a href="#tabs-3">Tab 3</a></li>
</ul>
<div id="tabs-1">
<p>Tab 1 Content Here</p>
</div>
<div id="tabs-2">
Load Script 2 Here - loadTabtwo()
</div>
<div id="tabs-3">
Load Script 3 Here - loadTabthree()
</div>
</div>
Fadi,你是对的。如果用户点击每个标签,我宁愿没有一次运行所有脚本。有没有一种方法来获取当前选项卡的getScript并禁用所有其他选项?所以基本上加载和卸载脚本点击标签? – MShack
有一种方法,但我不相信如果你这样做,它会是最好的做法,你能告诉你想要实现的?为什么脚本只需要加载到特定页面?最新加载它们的问题,而不是每次添加脚本并删除脚本 - 这是无缘无故的浪费时间 –
在页面刷新时,加载当前选项卡,但脚本不会反射,无论如何要合并.load和getScript,所以在页面刷新当前标签脚本加载? – MShack