它可以在Firefox上完美运行。对于Chrome和Safari,似乎我的“ calc”变量不起作用。 (http://pmoore17.altervista.org/TWADrama/index.php

任何帮助都将受到赞赏!

    var hidetop = $("#hidetop");
    var range = $("#hidetop").height();
    var body = $("#wrappercover");

    $(document).on('scroll', function() {

      var scrollTop = $(this).scrollTop();
      var offset = hidetop.offset().top;
      var height = hidetop.outerHeight();
      offset = offset + height;
      var calcA = 1 - (scrollTop - offset + range) / range;

      hidetop.css({
        'opacity': calcA
      });

      if (calcA > '1') {
        hidetop.css({
          'opacity': 1
        });
      } else if (calcA < '0') {
        hidetop.css({
          'opacity': 0
        });
      }
    });

最佳答案

我可以看到您的变量中有一个数字,但您正在与一个字符串值进行比较:

if (calcA > '1') {
//----------^^^--------is not a number
else if (calcA < '0') {
//---------------^^^--------is not a number




console.log('1 === "1"', 1 === "1");
console.log('1 === "0"', 1 === "0");
console.log('1 === 1', 1 === 1);
console.log('0 === "0"', 0 === "0");

07-24 16:50