2013-02-27 3 views
0

Я получаю следующую ошибку в консоли Chrome dev.Не удается прочитать свойство 'top' undefined - jQuery

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.

+2

Вы не можете ожидать, что люди последуют какой-то случайной ссылке на веб-сайт, который они никогда раньше не видели, чтобы помочь вам. Ограничьте проблему до минимума, необходимого для ее совершения, и опубликуйте этот код ** в самом вопросе **. Например, создайте [SSCCE] (http://sscce.org) и опубликуйте его. (И это не единственная причина для ввода кода * в * вопрос: http://meta.stackexchange.com/questions/118392/add-stack-overfow-faq-entry-or-similar-for-putting-code -in-the-question) –

+0

Ошибка из-за ошибки в вашем коде. Вам нужно использовать отладчик JavaScript, чтобы попытаться сузить его. – Blazemonger

+0

Я не уверен, где в JavaScript идет от @ T.J.Crowder, если бы я опубликовал все это? – Colin747

ответ

1

Я сделал тестовый случай здесь:

http://jsfiddle.net/3MxL2/1/

$("a").tooltip(); 

Похоже, есть только проблема с JQuery инструментов подсказке плагин, он не позволяет связать с объектом документа , Попробуйте использовать общий тег «a» для привязки, и он должен работать. Есть еще некоторые ошибки моделирования, но это должно устранить непосредственную проблему.

+0

Я боюсь, что Александр побьет вас, я загрузил набор инструментов для клиентов без функций подсказки (поскольку я использую библиотеку пользовательского интерфейса jQuery для всплывающих подсказок), и ошибка теперь исчезла. – Colin747

+0

Splendid. Рад, что он работает. –

Смежные вопросы