2015-09-08 19 views
31

我真的不明白這個鉻錯誤:未捕獲的SecurityError:未能執行「歷史記錄」「replaceState:不能與起源「空」的文檔中創建

Uncaught SecurityError: Failed to execute 'replaceState' on 'History': cannot be created in a document with origin 'null'

在邊緣,Firefox和IE沒有錯誤。

我使用jquery 1.11.1和jquery mobile 1.4.5。

這是我的索引文件:

<!DOCTYPE html> 
<html> 
<head> 

    <meta charset="UTF-8"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 

    <link rel="stylesheet" href="css/xy.min.css" /> 
    <link rel="stylesheet" href="css/jquery.mobile.icons.min.css" /> 
    <link rel="stylesheet" href="css/jquery.mobile.structure-1.4.5.min.css" /> 

    <title></title> 

</head> 

<body> 
    <div data-role="page"> 
     <div data-role="header" data-add-back-btn="true"> 
      <p align="center">Test</p> 
     </div> 

     <ul data-role="listview" data-filter="true" data-filter-placeholder="Kategorie suchen" data-inset="true" data-count-theme="b"> 
      <li><a href="assets/beck/index.html" data-rel"dialog" rel ="external">Bäckereien </a></li> 
     </ul> 

    </div> 
    <script src="js/jquery-1.11.1.min.js"></script> 
    <script src="js/jquery.mobile-1.4.5.min.js"></script> 
</body> 

</html> 

任何幫助,非常感謝!

+0

沒有你的Javascript代碼,我們將無法幫助你太多... – D4V1D

+0

@ D4V1D我沒有改變jquery,我只是加載它。 – olivier

+0

你是否運行網絡服務器(本地或不是)? –

回答

61

補充一點:

<script> 
    $(document).bind('mobileinit',function(){ 
     $.mobile.changePage.defaults.changeHash = false; 
     $.mobile.hashListeningEnabled = false; 
     $.mobile.pushStateEnabled = false; 
    }); 
</script> 

就在jquery.mobile-1.4.5.min.js

了Android WebViewClient和Chrome在Windows上運行。

+0

感謝這個腳本。我擔心我的Android應用程序將變得無用(僅使用Webview和本地文件) – AxelH

+2

好幾個月的工作後,我可以與這種感覺聯繫起來。希望他們不要改變別的。 – eFMer

+6

我發現我只需要'$ .mobile.pushStateEnabled = false;'腳本 – BluGeni

25

對我來說,解決方案是我必須運行一個網絡服務器。這是一個新的Chrome安全功能,不會根據Chromium Bug Post進行更改。

感謝A.沃爾夫!

+1

它說這個bug不會被修復?我發現以下問題仍然存在 - https://code.google.com/p/chromium/issues/detail?id=528681 – zumek

+1

當我在Firefox中運行它時,我的問題得到解決.. :-) –

+2

最快和最簡單的方法是: python -m SimpleHTTPServer 8080 –

0

當使用本地HTML文件時,這也可能是由Turbolinks(HTML pushState)造成的。

相關問題