我试图围绕 history.pushState 功能,如果我在控制台中使用它,它会起作用,但不会在页面上的函数或 jsfiddle 中产生所需的结果。
JSFIDDLE 链接在这里!
HTML:
<a href="#1" id="#1">Link 1</a>
<a href="#2" id="#2">Link 2</a>
<a href="#3" id="#3">Link 3</a>
<a href="#4" id="#4">Link 4</a>
<a href="#5" id="#5">Link 5</a>
<a href="#6" id="#6">Link 6</a>
<a href="#7" id="#7">Link 8</a>
JS:
$('a').click(function (e) {
var linkhref = $(this).attr("href");
var base = document.location;
var stateObj = { test: "page" };
// alert(linkhref); /*make sure href is link we want*/
history.pushState(stateObj, 'New URL: '+linkhref, base+linkhref);
e.preventDefault();
});
我也尝试过更简单的 history.pushState(stateObj, 'Test', linkhref); 同样没有结果。
我试图在此处复制 Mozilla 文档,但除了手动将 history.pushState 行粘贴到控制台之外,无法进行任何工作。