有人可以帮助解决这个问题:
$('#cont2, #cont3').hide();
$('li a').click(function(){
var idx= $(this).attr('id').substr(-1);
$('#cont1, #cont2, #cont3').hide();
$('#cont'+idx).show();
return false;
});
这在IE7和IE8中不起作用。为什么呢?
HTML
<ul>
<li class="linktab"><a href="#" id="link1">Link1</a></li>
<li class="linktab"><a href="#" id="link2">Link2</a></li>
<li class="linktab"><a href="#" id="link3">Link3</a></li>
</ul>
<div id="cont1">content 1</div>
<div id="cont2">content 2</div>
<div id="cont3">content 3</div>
答案 0 :(得分:4)
因为旧IE的substr
实施does not support a negative index as the argument。在该MDN页面中有一个替代品,或者您可以简单地执行
var id = $(this).attr('id');
var idx= id.substr(id.length - 2);