我在使用 Chrome 时遇到了一个奇怪的问题。我正在尝试在未遵循任何 w3c 标准开发的页面中解决此问题。我可以说几乎 1000 多个 w3c 问题。
错误出现在“onclick”函数上,该函数在 ajax 调用之前工作正常。在 ajax 调用之后,我们正在过滤内容(包括带有 onclick 的链接)。这些功能适用于 .show() 一个容器和 .hide() 另一个容器。在初始加载时工作正常。但是在使用 ajax 刷新链接后,.show() 和 hide() 不起作用(在浏览器中视觉上没有变化)。但我发现即使在 ajax 之后,函数调用也很顺利。我通过在函数中提供警报来测试这一点。但是函数内部的 .show() 和 hide() 没有发生。
我发现一种奇怪的行为,当我通过右键单击链接检查元素时,函数中的 show() 和 hide() 工作正常。
Safari、IE、Firefox 等没有问题,只有 Chrome 有问题。
希望这里的一些专家可以帮助我解决这个问题。
这里的代码:
HTML
<a href="javascript:void(0);" onclick="swap(1)" >Show hotels in area</a>
<a href="javascript:void(0);" onclick="swap(2)">Show hotels on map</a>
<table border="0" cellpadding="0" cellspacing="0">
<tr id="hotelArea" style="display: none">
<td>
<!-- Hote Area Content here -->
</td>
</tr>
<tr id="hotelsMap" style="display: none">
<td>
<!-- MAP Content here -->
</td>
</tr>
</table>
html 之后的 Javascript(位于页面底部):
function swap(n){
if(n==1){
$('#hotelsMap').hide('slow');
$('#hotelArea').show('slow');
}
if(n==2){
$('#hotelArea').hide('slow');
displayHotelsOnMap();
$('#hotelsMap').show('slow');
}
}
我也尝试使用 .live(click) 而不是内联 onclick,但发生了同样的问题....提前致谢-sunil