ローカルのWindows開発環境でjqueryUIタブを使用しています。私は彼らのデモコードでテストしています
<div id="tabs">
<ul>
<li><a href="#tabs-1">Nunc tincidunt</a></li>
<li><a href="#tabs-2">Proin dolor</a></li>
<li><a href="#tabs-3">Aenean lacinia</a></li>
</ul>
<div id="tabs-1">
<p>Proin elit arcu, rutrum commodo, vehicula tempus, commodo a, risus. Curabitur nec arcu. </p>
</div>
<div id="tabs-2">
<p>Morbi tincidunt, dui sit amet facilisis feugiat, odio metus gravida ante, ut pharetra massa metus id nunc. Duis scelerisque molestie turpis. Sed fringilla, massa eget luctus malesuada, metus eros molestie</p>
</div>
<div id="tabs-3">
<p>Mauris eleifend est et turpis. Duis id erat. Suspendisse potenti. Aliquam vulputate, pede ve</p>
</div>
</div>
問題は、この関数で「Uncaught URIError:URImalformed」が発生することです。
function isLocal( anchor ) {
return anchor.hash.length > 1 &&
decodeURIComponent( anchor.href.replace( rhash, "" ) ) ===
Uncaught URIError: URI malformed
decodeURIComponent( location.href.replace( rhash, "" ) );
}
これは、次のようなWindows環境のURIが原因であると思われます。
file:///C:/Work/my%20project/yadda%20ac%E7%F5es%20yadda/submenu.html#tabs-1
クライアントはライブに移行する前にローカルWindowsで動作することを確認したいので、どうすればローカルWindowsで動作させることができますか?私はテストしましたが、これはuriの特殊文字のエンコード(「acções」という単語のように)が原因であることがわかりました。特殊文字でも機能させる方法はありますか?
これらの文字を削除してファイル/フォルダーの名前を変更するだけでこれを修正できることはわかっていますが、フォルダーの名前を再度変更することにした場合に備えて、よりクライアントに適したソリューションが必要です(そして、すべてがCABOOMになります) )。