Javascript Chrome和InternetExplorer的控制台上写着';顶部';是';未定义';,但是Safari和Firefox没有错误

Javascript Chrome和InternetExplorer的控制台上写着';顶部';是';未定义';,但是Safari和Firefox没有错误,javascript,jquery,Javascript,Jquery,我被这个错误缠住了。为什么和Chrome版本45会显示此错误 顶部未定义 我错过什么了吗?我的一些HTML布局在InternetExplorer9中也会受到影响。而且,我不知道字体系列或div的宽度(百分比)是否会出现此错误。有什么办法解决这个问题吗 var bodyScroll = 0; $(document).ready(function() { bodyScroll = $(window).scrollTop(); currentP = 0; currentP1 = 0;

我被这个错误缠住了。为什么和Chrome版本45会显示此错误

顶部未定义

我错过什么了吗?我的一些HTML布局在InternetExplorer9中也会受到影响。而且,我不知道字体系列或div的宽度(百分比)是否会出现此错误。有什么办法解决这个问题吗

var bodyScroll = 0;
$(document).ready(function() {

  bodyScroll = $(window).scrollTop();
  currentP = 0;
  currentP1 = 0;
  currentP2 = 0;
  $(window).scroll(function() {

    scrTop = $(window).scrollTop();
    bodyScroll < scrTop ? currentP = currentP - .8 : currentP = currentP + .8;
    $(".mainContainer, .mobileBanner").css('background-position', "0
 " + currentP + "px");
    if (scrTop > $("#core-services .core-banner").position().top - 400) {
      bodyScroll < scrTop ? currentP1 = currentP1 - .8 : currentP1 = currentP1 + .8;
      $("#core-services .core-banner").css('background-position',
 "0 " + currentP1 + "px");

    }
    if (scrTop > $(".core-contact").position().top - 400) {
      bodyScroll < scrTop ? currentP2 = currentP2 - .8 : currentP2 = currentP2 + .8;
      $(".core-contact").css('background-position', "0 " + currentP2 + "px");

    }
    bodyScroll = scrTop;
  });
});
var bodyScroll=0;
$(文档).ready(函数(){
bodyScroll=$(窗口).scrollTop();
电流p=0;
电流P1=0;
电流P2=0;
$(窗口)。滚动(函数(){
scrTop=$(window.scrollTop();
bodyScroll$(“#core services.core banner”).position().top-400){
bodyScroll$(“.core contact”).position().top-400){
bodyScroll
以下内容适用于我,在Chrome 43中没有错误(我将使用Internet Explorer 9进行测试)

编辑:它正在Internet Explorer 9上工作。所以我怀疑错误不在你发布的代码中。您需要构建一个最小的示例,通过除去相关代码之外的所有其他内容来重现错误,然后发布JSFIDLE或堆栈溢出本机代码(如本文),然后人们可以在Internet Explorer 9中尝试并确认问题。这只是正常的调试。你会明白的。position().top应在Internet Explorer 9和Chrome中受支持

编辑:作为Internet Explorer中可能出现错误的示例,请检查是否有与HTML元素id同名的全局变量。如果你这样做了,它会触发“兼容性模式”,这将使Internet Explorer下降到Internet Explorer 8模式,而Internet Explorer 8模式不支持“文章”html5元素,因此这些元素就不会有一个“顶部”例如

var bodyScroll=0;
$(文档).ready(函数(){
bodyScroll=$(窗口).scrollTop();
电流p=0;
电流P1=0;
电流P2=0;
$(窗口)。滚动(函数(){
scrTop=$(window.scrollTop();
bodyScroll$(“#core services.core banner”).position().top-400){
bodyScroll$(“.core contact”).position().top-400){
bodyScroll

以下内容适用于我,在Chrome 43中没有错误(我将使用Internet Explorer 9进行测试)

编辑:它正在Internet Explorer 9上工作。所以我怀疑错误不在你发布的代码中。您需要构建一个最小的示例,通过除去相关代码之外的所有其他内容来重现错误,然后发布JSFIDLE或堆栈溢出本机代码(如本文),然后人们可以在Internet Explorer 9中尝试并确认问题。这只是正常的调试。你会明白的。position().top应在Internet Explorer 9和Chrome中受支持

编辑:作为Internet Explorer中可能出现错误的示例,请检查是否有与HTML元素id同名的全局变量。如果你这样做了,它会触发“兼容性模式”,这将使Internet Explorer下降到Internet Explorer 8模式,而Internet Explorer 8模式不支持“文章”html5元素,因此这些元素就不会有一个“顶部”例如

var bodyScroll=0;
$(文档).ready(函数(){
bodyScroll=$(窗口).scrollTop();
电流p=0;
电流P1=0;
电流P2=0;
$(窗口)。滚动(函数(){
scrTop=$(window.scrollTop();
bodyScroll$(“#core services.core banner”).position().top-400){
bodyScroll$(“.core contact”).position().top-400){
bodyScroll


我想你必须发布一个JSFIDLE或一些html代码。我有三个类似的部分,你使用的是哪个jQuery版本?对于Firefox web控制台和“未定义”,我通常使用jQuery v1.11.1:我想你必须发布一个JSFIDLE或一些带有html的代码。我有三个类似的部分。你在使用哪个jQuery版本?我在Firefox web控制台上使用jQuery v1.11.1,而且“未定义”:我想我的另一个js正在制造问题。@confuseelement不客气,希望你能解决。我想我的另一个js正在制造问题。@confuseelement不客气,希望你能解决。