这是我的代码:
(注意:我正在使用Purl(https://github.com/allmarkedup/purl))
$("#major").click(function() {
$(".questions, .sections, #major_list").hide();
$(".subnav_item:not(#major)").css("font-style", "normal");
$("#major").css("font-style", "italic");
$(".subnav_item:not(#major)").css("color", "black");
$("#major").css("color", "#6666FF");
$("#major_list").show();
var a = 0;
original_link = [];
$(".major_question").each(function() {
original_link[a] = $(this).attr("href");
a++;
});
});
$("#major_list li").click(function() {
$("#major_sub").text($(this).text());
$("#major_nav .questions").hide();
$("#major_nav .questions").show("fast");
major = $(this).text();
major = major.toLowerCase();
major = major.replace(" ", "-");
var i = 0;
$(".major_question").each(function() {
link = original_link[i];
i++;
link = url.attr('host') + "/" + url.segment(1) + "/academics/" + major + "/" + link;
alert(link);
$(this).attr("href", link);
});
});
说我在http://localhost:3000/university-of-pittsburgh/academics/classes/do-kids-participate-in-class
页面上。当我提醒(链接)...正确的链接被警告!但是,当我点击该链接时,它会向我提供正确的链接,前面是... http://localhost:3000/university-of-pittsburgh/academics/classes
。
答案 0 :(得分:4)
您需要link
作为完整的网址,从http://...
开始(或至少//...
)。
你给它的东西看起来像是一个相对的链接。
答案 1 :(得分:2)
在链接前放置一个正斜杠“//”,否则它们将变为相对于当前页面。例如:
link = url.attr('host') + "/" + url.segment(1) + "/academics/" + major + "/" + link;
会变成
link = '//' + url.attr('host') + "/" + url.segment(1) + "/academics/" + major + "/" + link;