我想运行一个pushState
并且它工作正常但是当我通过iframe元素加载页面时它拒绝工作。这就是我的代码的样子
$('a[href]').click(function){
newHref = $(this).attr('href');
history.pushState('', '', newHref);
})
但它不起作用,请任何人知道如何实现这个目标?
答案 0 :(得分:4)
使用history.pushState()
更改iframe源页面的网址。要更改地址栏中的主网址,您必须将其发送给父级,因此请使用此
window.parent.history.pushState();
答案 1 :(得分:0)
你应该只需要在click事件括号中保持被称为包装的函数......
$('a[href]').click(function(e){
e.preventDefault();
newHref = $(this).attr('href');
history.pushState('', '', newHref);
});