jQuery UI选项卡和多选href错误处理基本标记

时间:2012-11-29 12:00:35

标签: jquery jquery-ui href multi-select base

我正在尝试解决jQuery UI最近更改带来的这个问题。 我正在使用codeigniter,jquery 1.8.2。,jquery UI 1.9.1。

我总是把它放在头部:

<base href="http://www.example.com/" />

所以我可以为我的图像,ajax调用和其他原因设置集中式URL方法。 问题是,jquery UI还将使用它作为所有页面的所有锚点href的引用。例如,如果您在

中放置一个jQuery UI选项卡

http://www.example.com/view/users/1

第一个标签会加载主页的内容,因为它会加载

http://www.example.com/#路径

与multiselect(http://www.erichynds.com/jquery/jquery-ui-multiselect-widget/)相同的问题,全部检查并取消选中所有会将您重定向到主页,因为

<a href="#">

将转到http://www.example.com/#,而不是调用当前页面的js函数,例如http://www.example.com/view/users/1#

找到了类似的门票:

http://bugs.jqueryui.com/ticket/4941

http://bugs.jqueryui.com/ticket/8637

1 个答案:

答案 0 :(得分:1)

$.fn.__tabs = $.fn.tabs;$.fn.tabs = function (a, b, c, d, e, f) {
var base = location.href.replace(/#.*$/, '');
$('ul>li>a[href^="#"]', this).each(function () {
    var href = $(this).attr('href');
    $(this).attr('href', base + href);
});
$(this).__tabs(a, b, c, d, e, f);
};

怪异。这对我有用。对于标签。