javascript:void();在IE下会报告语法错误(见test2),而firefox不会报错。并且当该错误发生时,microsoft script editor或者IE8自带的debugger都帮不了你(根本不会自动定位错误)。
<script>
function test(){
alert(1);
}
</script>
<a href="javascript:void();" onclick="test();return false;">test1</a>
<a href="javascript:void();" onclick="test();">test2</a>
<a href="javascript:void(0);" onclick="test();">test3</a>