我正在尝试从选项卡菜单中删除标签。查看其他解决方案,我意识到我需要包含 return false; 在我的代码中,但是我不确定我需要在哪里包含它。下面是代码,如果有人能指出我应该如何摆脱哈希标签,那就太好了。
(function (a) {
a.fn.extend({
tabify: function (e) {
function c(b) {
hash = a(b).find("a").attr("href");
return hash = hash.substring(0, hash.length - 4)
}
function f(b) {
a(b).addClass("active");
a(c(b)).show();
a(b).siblings("li").each(function () {
a(this).removeClass("active");
a(c(this)).hide()
})
}
return this.each(function () {
function b() {
location.hash && a(d).find("a[href=" + location.hash + "]").length > 0 && f(a(d).find("a[href=" + location.hash + "]").parent())
}
var d = this,
g = {
ul: a(d)
};
a(this).find("li a").each(function () {
a(this).attr("href", a(this).attr("href") + "-tab")
});
location.hash && b();
setInterval(b, 100);
a(this).find("li").each(function () {
a(this).hasClass("active") ? a(c(this)).show() : a(c(this)).hide()
});
e && e(g)
})
}
})
})(jQuery);
上面的html代码
<ul id="menu">
<li href="#tab-1">Tab 1</li>
<li href="#tab-2">Tab 2</li>
<li href="#tab-3">Tab 3</li>
</ul>
<div id="tab-1" class="content"></div>
<div id="tab-2" class="content"></div>
<div id="tab-3" class="content"></div>