代码之家  ›  专栏  ›  技术社区  ›  morizvonlanga

如果窗口宽度在800px和799px之间,JS是否起作用

  •  -1
  • morizvonlanga  · 技术社区  · 7 年前

        $(window).resize(function() {
      if ( $(window).width() > 799 && $(window).width() < 800 {
        location.reload();
      } else {}
    });
    

    我还编写了这段代码来检查页面重新加载后的宽度是否低于800

    if ($(window).width() < 800) {
      // do some stuff
    } else {}
    

    我可能还可以使用一个函数,如果断点(例如:800px)被击中,它应该只切换一次,你有什么想法吗?

    2 回复  |  直到 7 年前
        1
  •  2
  •   P.S.    7 年前

    你应该使用 >= <= > < ,如下所示:

    $(window).resize(function() {
      if ( $(window).width() >= 799 && $(window).width() <= 800 {
        location.reload();
      } else {}
    });
    

    > 799 && < 800 不会开火,因为799和800之间没有整数。

        2
  •  1
  •   morizvonlanga    7 年前

    var ww = $(window).width();
    var limit = 800;
    function refresh() {
       ww = $(window).width();
       var w =  ww<limit ? (location.reload(true)) :  ( ww>limit ? (location.reload(true)) : ww=limit );
    }
    var tOut;
    $(window).resize(function() {
        var resW = $(window).width();
        clearTimeout(tOut);
        if ( (ww>limit && resW<limit) || (ww<limit && resW>limit) ) {
            tOut = setTimeout(refresh, 10);
        }
    });