Safari中的历史API - pushState / replaceState - 状态未定义

时间:2013-03-23 22:00:37

标签: javascript html5 safari pushstate

以下适用于Chrome和Firefox,但不适用于Safari(6.0.2):

var data = [];
data.Message = "hi!"
history.pushState({Data:data}, '', document.location.href);
console.log(history);
alert(history.state.Data.Message);

在Safari中,历史状态的控制台日志未定义,消息也是如此。对于replaceState也是如此。

在这里小提琴:http://jsfiddle.net/wYV9d/3/

1 个答案:

答案 0 :(得分:2)

这是因为我将数据创建为数组而不是对象。

var data = {};

工作正常。