Javascript 无法读取属性';顶部';未定义-jQuery的定义

Javascript 无法读取属性';顶部';未定义-jQuery的定义,javascript,jquery,css,html,Javascript,Jquery,Css,Html,我在Chrome开发控制台中遇到以下错误 Uncaught TypeError: Cannot read property 'top' of undefined jquery.tools.min.js:19 c jquery.tools.min.js:19 a.extend.show jqu

我在Chrome开发控制台中遇到以下错误

Uncaught TypeError: Cannot read property 'top' of undefined jquery.tools.min.js:19
c                                                           jquery.tools.min.js:19
a.extend.show                                               jquery.tools.min.js:19
(anonymous function)                                        jquery.tools.min.js:19
b.event.special.(anonymous function).handle                 jquery.min.js:4
b.event.dispatch                                            jquery.min.js:3
v.handle
如果站点在某个页面上处于空闲状态,即使用户并没有输入,错误的数量也会不断增加。这是什么原因造成的

选项卡jQuery:

$(document).ready(function () {
  $(this).scrollTop(0);                                                     //send user to top of page

/***********************************************************************************************************

LOAD TAB CONTENT

***********************************************************************************************************/
  $("#tabContent1").load("external/content.html", function () {                                 
    $("#offLogo").css({                                                     //apply CSS to offLogo
      width: "600px",
      margin: "auto",
      padding: "0px 0px 10px 0px"
    });
  });
  $("#tabContent2, #tabContent3, #tabContent4, #tabContent5, #tabContent6, #tabContent7").hide();       //hide tab content

  $("a").hover(function () {
    $(this).toggleClass('hover');                                           //toggle the hover class when user hovers over tab
  });

  $('a[name="#tabContent1"]').click(function () {                           //when user clicks the tab with the name tabContent1 do the following
    $("#tab2, #tab3, #tab4, #tab5, #tab6, #tab7").removeClass('activeTab');               //removes the activeTab class from all other tabs
    $(this).addClass('activeTab');                                          //adds activeTab class to the tab that was clicked
    $("#tabContent1").load("external/content.html", function () {           //loads external html file into content pane of the tab
      $("#offLogo").css({
        width: "600px",
        margin: "auto",
        padding: "0px 0px 10px 0px"
      });
    });
    $("#tabContent1").show();                                               //shows the content of the tab
    $("#tabContent2, #tabContent3, #tabContent4, #tabContent5, #tabContent6, #tabContent7").hide();
  });

  $('a[name="#tabContent2"]').click(function () {
    $("#tab1, #tab3, #tab4, #tab5, #tab6, #tab7").removeClass('activeTab');
    $(this).addClass('activeTab');
    $("#tabContent2").show();
    $("#tabContent1, #tabContent3, #tabContent4, #tabContent5, #tabContent6, #tabContent7").hide();
  });

  $('a[name="#tabContent3"]').click(function () {
    $("#tab1, #tab2, #tab4, #tab5, #tab6, #tab7").removeClass('activeTab');
    $(this).addClass('activeTab');
    $("#tabContent3").show();
    $("#tabContent1, #tabContent2, #tabContent4, #tabContent5, #tabContent6, #tabContent7").hide();
  });

  $('a[name="#tabContent4"]').click(function () {
    $("#tab1, #tab2, #tab3, #tab5, #tab6, #tab7").removeClass('activeTab');
    $(this).addClass('activeTab');
    $("#tabContent4").show();
    $("#tabContent1, #tabContent2, #tabContent3, #tabContent5, #tabContent6, #tabContent7").hide();
  });

  $('a[name="#tabContent5"]').click(function () {
    $("#tab1, #tab2, #tab3, #tab4, #tab6, #tab7").removeClass('activeTab');
    $(this).addClass('activeTab');
    $("#tabContent5").show();
    $("#tabContent1, #tabContent2, #tabContent3, #tabContent4, #tabContent6, #tabContent7").hide();
  });

  $('a[name="#tabContent6"]').click(function () {
    $("#tab1, #tab2, #tab3, #tab4, #tab5, #tab7").removeClass('activeTab');
    $(this).addClass('activeTab');
    $("#tabContent6").show();
    $("#tabContent1, #tabContent2, #tabContent3, #tabContent4, #tabContent5, #tabContent7").hide();
  });

  $('a[name="#tabContent7"]').click(function () {
    $("#tab1, #tab2, #tab3, #tab4, #tab5, #tab6, #tab7").removeClass('activeTab');
    $(this).addClass('activeTab');
    $("#tabContent7").show();
    $("#tabContent1, #tabContent2, #tabContent3, #tabContent4, #tabContent5, #tabContent6").hide();
  });
Tooptip:

  $(function () {
    $(document).tooltip();  //shows title attribute as a tooltip
  });

当您将鼠标移出窗口(比如说在Chrome地址栏上),然后将鼠标移到选项卡上时,会出现错误,但如果鼠标停留在页面内并将鼠标移到选项卡上,则不会出现错误。在一些帮助下,这已缩小为tooptip函数的问题。

我在这里制作了一个测试用例:


看起来jquery工具提示插件有一个问题,它不允许您绑定到文档对象。尝试只使用通用的“a”标记进行绑定,它应该可以工作。仍然存在一些样式错误,但它应该可以解决当前的问题。

你不能指望人们为了帮助你而随机链接到他们从未见过的网站。将问题缩小到发生问题所需的最小范围,并将代码发布到问题本身中。例如,创建一个,然后发布它。(这不是将代码置于问题中的唯一原因:)错误最初是由代码中的某个地方引起的。您需要使用JavaScript调试器来尝试缩小范围。我不确定它在JavaScript中的位置@T.J.Crowder您想让我全部发布吗?@Colin747:不。再次:“将问题缩小到实现它所需的最低限度…”(我不是说这不会花费时间和精力)“…然后发布代码…”@T.J.Crowder你能给我一些关于如何缩小范围的建议吗?恐怕Alexander比你做得更好,我下载了一套没有工具提示功能的客户工具(因为我使用jQuery UI库来提供工具提示),错误现在消失了。很高兴它起作用了。
$("a").tooltip();