web-dev-qa-db-ja.com

キャッチされないSecurityError: 'History'で 'replaceState'の実行に失敗しました:Origin 'null'のドキュメントでは作成できません

私は本当にこれを取得しませんchromeエラー:

キャッチされないSecurityError: 'History'で 'replaceState'の実行に失敗しました:Origin 'null'のドキュメントでは作成できません

Edgeでは、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>

助けていただければ幸いです!

31
olivier

これを追加:

<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で動作します。

61
eFMer

私にとっての解決策は、ウェブサーバーを実行する必要があるということでした。これは新しいchromeセキュリティ機能であり、Chromium Bug Postによると変更されません。

A.ウルフに感謝します!

25
olivier

これは、ローカルHTMLファイルで作業しているときのTurbolinks(HTML pushState)によっても発生する可能性があります。

0
Greg Benedict