js实现页面刷新滚动条位置不变

今天因为这个问题困扰了很久网上的例子都尝试没效果,后来发现一点原来是内容最外层没有div的原因

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SpotChkDetail.aspx.cs" Inherits="Topevery.DUM.Web.Observer.SpotChkDetail" %>
<script runat="server">
  protected override bool HeaderScriptFilter(Topevery.Framework.Web.Configuration.Script val)
  {
    switch (val.Key)
    {
      case "ajaxpro2.prototype":
      case "ajaxpro2.core":
      case "ajaxpro2.converter":
      case "ajaxpro2.onloading":
      case "ajaxpro2.assembly.AjaxFunction":
      case "my97":
      case "image":
      case "jquery.pagination":
      case "jquery.jqGrid.locale":
      case "jquery.jqGrid":
      case "jquery-load-image":
      case "jquery.validationEngine":
      case "jquery.validationEngine-zh":
      case "WeiBo":
      case "jquery.mousewheel":
      case "jquery.iviewer":
      case "jquery.gallery.singer":
        return true;
      default:
        return base.HeaderScriptFilter(val);
    }
  }
  protected override bool HeaderStyleFilter(Topevery.Framework.Web.Configuration.Style val)
  {
    switch (val.Key)
    {
      case "jqgrid":
      case "jqgrid-grey":
      case "validationEngine":
        return true;
      default:
        return base.HeaderStyleFilter(val);
    }
  }
</script>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
</head>
<body id="bbdy">
  <form id="form1" runat="server">
    <div>
    <div class="TUI-layout-north">
      <div class="TUI-title">
        <span class="TUI-ico ico-note"></span><strong>抽查</strong>
      </div>
      <div class="" style="float: right; margin-top: -30px; z-index: 99999; position: relative;">
        <object id="WebBrowser" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height="0" width="0">
        </object>
        <input type="button" class="TUI-button" value="打 印" onclick="document.all.WebBrowser.ExecWB(6, 1)" id="Button2" />
        <input type="button" class="TUI-button" value="打印预览" onclick="document.all.WebBrowser.ExecWB(7, 1)" />
      </div>
      <div class="TUI-alert">
        <span class="ml10px">抽查时间:<asp:Label ID="lbBeginDate" runat="server" Text="Label"></asp:Label>  
          失效时间:<asp:Label ID="lbEndDate" runat="server" Text="Label"></asp:Label>  
          消息内容:<asp:Label ID="lbContent" runat="server" Text="Label"></asp:Label></span>
        <div style="display: none">
                <asp:Button ID="btnRef" runat="server" OnClick="btnRef_Click" Text="刷新" />
              </div>
      </div>
    </div>
    <div class="TUI-layout-center">
      <div class="TUI-content TUI-h100 TUI-of-auto TUI-align-center">
        <asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound">
          <%--OnItemCommand="Repeater1_ItemCommand"--%>
          <HeaderTemplate>
            <table class="TUI-grid-list w100" id="observers">
              <tr>
                <th style="width: 150px">巡查员头像
                </th>
                <th style="width: 80px">姓 名
                </th>
                <th style="width: 120px">是否超时
                </th>
                <%--<th style="width: 110px">城管通号码
                </th>
                <th style="width: 110px">城管通版本
                </th>--%>
                <th style="width: 100px">消息状态
                </th>
                <th style="width: 100px">审核状态
                </th>
                <th style="width:150px">审核
                </th>
              </tr>
          </HeaderTemplate>
          <ItemTemplate>
            <tr class="people_title_td">
              <td rowspan="2" valign="middle" style="width: 110px">
                <img id="img_observer_poto" runat="server" height="135" style="border: 1px solid #bababa;" width="100" />
              </td>
              <td style="width: 60px">
                <%# Eval("c_name")%> 
                  <asp:HiddenField ID="hfObId" runat="server" Value='<%# Eval("c_ob_id") %>' />
                <asp:HiddenField ID="hfId" runat="server" Value='<%# Eval("c_id") %>' />
              </td>
              <td style="width: 100px">
                <%# Eval("c_is_over_time")%> 
              </td>
              <%--<td style="width: 110px">
                <%# Eval("c_pda_number")%> 
              </td>
              <td style="width: 110px">
                <%# Eval("c_pda_version")%> 
              </td>--%>
              <td style="width: 90px">
                <%# Eval("notify_state")%> 
              </td>
              <td style="width: 90px">
                <%# Eval("eligible_state")%> 
              </td>
              <td style="width:150px;">
                <div style="display:<%# Eval("c_is_eligible").ToString() !="0"?"none":"" %>">
                <%--<asp:LinkButton ID="LinkButton1" runat="server" CommandName="lnk_poto" CommandArgument='<%# Eval("c_id") %>'>重摄</asp:LinkButton>
                <asp:LinkButton ID="LinkButton2" runat="server" CommandName="lnk_ok" CommandArgument='<%# Eval("c_id") %>'>合格</asp:LinkButton>
                <asp:LinkButton ID="LinkButton3" runat="server" CommandName="lnk_no" CommandArgument='<%# Eval("c_id") %>'>不合格</asp:LinkButton>--%>
                <a href='#' onclick='review(<%# Eval("c_id") %>,0,"重摄")' class='TUI-toolbar-btn'><span></span>重摄</a>
                <a href='#' id="qualified" onclick='review(<%# Eval("c_id") %>,1,"合格")' class='TUI-toolbar-btn'><span></span>合格</a>
                <a href='#' id="Unqualified" onclick='review(<%# Eval("c_id") %>,2,"不合格")' class='TUI-toolbar-btn'><span></span>不合格</a>

                  </div>
              </td>
            </tr>
            <tr class="alt_tr2">
              <td colspan="5" style="height: 160px; text-align: left">
                <table class="choucha-table">
                  <tr>
                    <asp:Repeater ID="rptImg" runat="server">
                      <ItemTemplate>
                        <td>
                          <div class="div_img TUI-notelist-container TUI-gallery choucha-img">
                            <div id='imge'+'<%#Eval("FileId") %>'>
                                <div class="TUI-gallery-content TUI-gallery-img">
                                  <a title='点击放大' href="javascript:void(0)"
                                    sourceSrc='<%#Eval("Imageurl") %>' largeSrc='<%#Eval("Imageurl") %>'><img src='<%#Eval("Imagethumbil") %>' /><span><%#Eval("Summary") %></span></a>
                                </div>
                            </div>
                          </div>
                        </td>
                      </ItemTemplate>
                    </asp:Repeater>
                  </tr>
                </table>
              </td>
            </tr>
          </ItemTemplate>
          <FooterTemplate>
            </table>
          </FooterTemplate>
        </asp:Repeater>
        <input type="hidden" id="hdnvalue" runat="server" value="0" /><!----存放scorllTop值-->
      </div>
    </div>
    </div>
    <script type="text/javascript">
      $(document).ready(function () {
        TUILayout("form");
        //LoadImage();
        $(".div_img").gallery({
          gallerySize: { width: 90, height: 120 },
          fullView: "true" //ture为允许点击图像全屏浏览
        });

      });
      function LoadImage() {
        var jq_o_list = $("#observers div[@ref_id]");

        for (var i = 0 ; i < jq_o_list.length; i++) {
          load_to(jq_o_list[i]);
        }
      }

      function load_to(obj) {
        var jq_o = $(obj);
        Topevery.DUM.Web.AjaxFunction.GetEvtDefault(jq_o.attr("ref_id"), function (ajaxResult) {
          var val = ajaxResult.value;
          jq_o.empty();
          jq_o.append(val.Html);
        });
      }

      //$("#div_evt_img").gallery({
      //  images: evt_img_list,
      //  thumbSize: { width: 65, height: 60 },//缩略图大小
      //  gallerySize: { width: 380, height: 280 },//画廊图(中间大图)大小
      //  thumbDisplayNum: 4,//缩略图显示数量
      //  scalingSize: { width: 360, height: 260 },//画廊图(中间大图)自动比例缩放最大大小
      //  fullView: "true" //ture为允许点击图像全屏浏览
      //});

      function Reminder() {
        NotSelectEvt("已经再次发送消息通知巡查员!");
      }

      function review(id, type, content) {
        if (confirmL("确认" + content + "吗?", function () {
            Topevery.DUM.Web.AjaxFunction.ReviewImg(id, type);
            $("#btnRef").click();

        })) {
        }
      }
    </script>

  </form>
</body>
</html>
<script type="text/javascript">
  window.onbeforeunload = function () {
    var scrollPos;
    if (typeof window.pageYOffset != 'undefined') {
      scrollPos = window.pageYOffset;
    }
    else if (typeof document.compatMode != 'undefined' &&
      document.compatMode != 'BackCompat') {
      scrollPos = document.documentElement.scrollTop;
    }
    else if (typeof document.body != 'undefined') {
      scrollPos = document.body.scrollTop;
    }
    document.cookie = "scrollTop=" + scrollPos; //存储滚动条位置到cookies中
  }
  window.onload = function () {
    if (document.cookie.match(/scrollTop=([^;]+)(;|$)/) != null) {
      var arr = document.cookie.match(/scrollTop=([^;]+)(;|$)/); //cookies中不为空,则读取滚动条位置
      document.documentElement.scrollTop = parseInt(arr[1]);
      document.body.scrollTop = parseInt(arr[1]);
    }
  }
    </script>

以上就是本文的全部内容,希望对大家有所帮助,同时也希望多多支持我们!

(0)

相关推荐

  • js实现刷新页面后回到记录时滚动条的位置【两种方案可选】

    当div中绑定数据,给它一个属性overflow-y: scroll,添加长度大小,使其能够出现滚动条:每次刷新的时候滚动条总是会出现在最上方,这使我很头疼,经过查阅网上资料,返现两种方法可行.如下: 第一种方案 将上一个页面的div的scrolltop距离长度记录在cookie中,然后通过js调整刷新页面时的长度记录,代码如下: js代码: <script> var _h = 0; function SetH(o) { _h = o.scrollTop SetCookie("a&q

  • JS实现的页面自定义滚动条效果

    本文实例讲述了JS实现的页面自定义滚动条效果.分享给大家供大家参考,具体如下: 这里演示网页上用的滚动条效果,是一个自定义的滚动条代码,除了上下两个箭头以外,滚动条和一般的浏览器基本差不多,鼠标滚轮滚动,滚动条滚动.html结构很简单,mainBox是外层div,content是内容,滚动条div是js动态生成的. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-web-zdy-scroll-style-codes/ 具体代码如下: <!D

  • JS实现网页上随滚动条滚动的层效果代码

    本文实例讲述了JS实现网页上随滚动条滚动的层效果代码.分享给大家供大家参考,具体如下: 这款网页上随滚动条滚动层代码,拖动滚动条即可看到效果,对联广告的代码也都是基于此的,右侧的浮动层同样是可以关闭的稍微加工,便可实现一个浮动广告的代码,运行一下,先看效果吧. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-web-fixed-scroll-adv-codes/ 具体代码如下: <!DOCTYPE html PUBLIC "-//W3

  • js实现简易垂直滚动条

    效果图: 代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>垂直滚动条</title> <style type="text/css"> .con { width: 350px; height: 600px; border: 1px solid saddlebrown; position: relativ

  • js将滚动条滚动到指定位置的简单实现方法

    js将滚动条滚动到指定位置的简单实现方法 代码如下(主要是通过设置Location的hash属性): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"&

  • jsp中为表格添加水平滚动条的实现方法

    首先,本项目中使用的是bootstrap框架,因此有些人会说,给表格设置自适应属性就可以了 这里要申明的是 bootsrtap自适应是针对当浏览器不占满整个屏幕,而是一半的时候才会出现横向的滚动条 而当我们将浏览器最大化的时候,如果列数增多了呢?会出现什么效果 答案就是会出现挤压的效果,横向并不会出现滚动条 查看网上的教程,很多人都说将什么父div设置100%,table添加scrool属性均不可 这里,解决的方法很简单,设置<th>标签的属性即可,让其不要自动换行 $(document).r

  • javascript简单实现跟随滚动条漂浮的返回顶部按钮效果

    本文实例讲述了javascript简单实现跟随滚动条漂浮的返回顶部按钮效果.分享给大家供大家参考,具体如下: 比较优秀的一款超过一屏高度才显示的,跟随滚动条漂浮的返回顶部按钮特效代码. 运行效果如下图所示: 完整实例代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quo

  • jsp中实现带滚动条的table表格实例代码

    如下所示: <div style="width:700px; height:225px; overflow:auto;"> <table border="1" width="100%" cellpadding="0" cellspacing="0"> <tr> <td width="3%">0</td> <td width

  • JavaScript实现垂直滚动条效果

    本文实例为大家分享了js垂直滚动条的实现代码,供大家参考,具体内容如下 1.红色盒子高度计算公式: 容器的高度 / 内容的高度 * 容器的高度 2.红色方块移动一像素 ,我们的内容盒子移动多少呢? (内容盒子高度 - 大盒子高度) / (大盒子高度 - 红色盒子的高度) 计算倍数 (内容盒子高度 -  大盒子高度)/  (大盒子高度 - 红色盒子的高度)   * 红色盒子移动的数值 <html> <head> <meta charset="UTF-8"&g

  • JavaScript中关于iframe滚动条的去除和保留

    在开发中经常遇到去掉全部的滚动条,去掉右边的滚动条且保留底下的滚动条,去掉底下的滚动条且保留右边的滚动条,大家基于js是怎么实现的呢?下面通过本文给大家介绍下JavaScript中关于iframe滚动条的去除和保留的实现方法.一起看看吧! iframe嵌入页面后,我们有时需要调整滚动条,例如,去掉全部的滚动条,去掉右边的滚动条且保留底下的滚动条,去掉底下的滚动条且保留右边的滚动条.那么我们应该怎么做呢?    一:去掉全部的滚动条 第一个方法:   iframe 有一个scrolling属性,它

随机推荐