jquery标签问题

时间:2010-05-22 19:29:06

标签: jquery jquery-ui

问题是每次激活标签时,光标会跳到页面顶部,因为标签链接指向div,页面向上滚动到div的顶部。如果用户向下滚动一点,同时读取标签内容,则会产生跳跃效果。

反正有没有阻止这个?

2 个答案:

答案 0 :(得分:1)

更新以适合发布的代码!

$j('.null_link').live('click', function(e){
e.preventDefault();
return false;
});

$('ul.tabs li a').click(function(e) {
    e.preventDefault();
});

假设这样的事情:

<ul class="tabs">
<li><a href="#" >TAB A</a></li>
<li><a href="#" >TAB B</a></li>
<li><a href="#" >TAB C</a></li>
</ul>

注意:

你也可以通过这样做来阻止跳跃效果:

<li><a href="javascript:;" >TAB A</a></li>

答案 1 :(得分:0)

还有其他问题,因为默认情况下ui标签没有这种行为。这里是ui 1.8和jquery 1.4.2的UI选项卡的实现,除了$('#selector')之外,它的调用没有任何变化。tabs(); http://www.horsezone.com.au/index.php?a=28&b=153

您在运行该页面时是否收到任何javascript错误?我怀疑有什么东西在停止脚本,因此“返回false”到A元素永远不会发生并且锚点发射。

这不是标准的jquery-ui标签行为。

另一方面,对于与点击的绑定,这将是“记录”的方式:

   $j("#tabs").tabs(
       { fx: { opacity: 'toggle' },
          select: function(e) { e.preventDefault(); return false; }
     });