我在本地 Windows 开发环境中使用 jquery UI 选项卡。我正在用他们测试演示代码 http://jqueryui.com/tabs/#default
<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: URI malformed”:
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 )。