|
|
|
 |
 |
Исходник |
 |
|
 |
 |
|
Автор:
|
|
|
Название:
|
Хранитель состояния scroll-ов на странице |
|
Дата:
|
04 October 2006 |
|
Описание: |
У вас в форуме увидел Хранитель состояния scroll-ов на странице. Не получается применить его. Подскажите, в каком месте его (код) вставить? Вставил сразу после using - не срабатывает. В Page_Load - ошибки выдаёт. Подскажите, плз!!! |
| |
Разместить ссылку на этот исходник в форуме вы можете вставив в текст сообщения
следующую строку:
[CODEPOST ID=196]Хранитель состояния scroll-ов на странице[/CODEPOST] |
| Оценка: |
Проголосовало 1 посетителей, средняя оценка 5.00 |
| Оценить: |
|
1 using System;
2 using System.Data;
3 using System.IO;
4 using System.Text;
5 using System.ComponentModel;
6 using System.Globalization;
7 using System.Threading;
8 using System.Configuration;
9 using System.Collections;
10 using System.Web;
11 using System.Web.Security;
12 using System.Web.UI;
13 using System.Web.UI.WebControls;
14 using System.Web.UI.WebControls.WebParts;
15 using System.Web.UI.HtmlControls;
16
17 namespace xSaveScroll
18 {
19 [ToolboxData("<{0}:xSaveScroll runat=server></{0}:xSaveScroll>"),Description ("Контрол который сохраняет позиции всех скролов находящихся на странице")]
20 public class xSaveScroll: HiddenField
21 {
22 protected override void Render(System.Web.UI.HtmlTextWriter writer)
23 {
24 RegisterScript();
25 base.Render(writer);
26 Page.ClientScript.RegisterStartupScript(Page.GetType(), "Scroll2", "LoadState();", true);
27 Page.ClientScript.RegisterStartupScript(Page.GetType(), "Scroll3", "document.getElementById('" + Page.Form.ClientID + "').onsubmit=function(){SaveState();};", true);
28 }
29 private void RegisterScript()
30 {
31 string Script;
32 Script = "function SaveState(){";
33 Script += "var Ctrls=document.getElementsByTagName('*');";
34 Script += "x=Ctrls.length;";
35 Script += "var i;";
36 Script += "for(i=0;i<x;i++){";
37 Script += "if (Ctrls[i].scrollTop!=null && Ctrls[i].scrollLeft!=null){";
38 Script += "if (Ctrls[i].scrollTop!=0 || Ctrls[i].scrollLeft!=0)";
39 Script += "document.getElementById ('" + this.ClientID + "').value+=Ctrls[i].id+','+Ctrls[i].scrollTop+','+Ctrls[i].scrollLeft+';';}}}";
40 string Script2;
41 Script2 = "function LoadState() {";
42 Script += "var Ctrls=document.getElementsByTagName('*');";
43 Script2 += "x=Ctrls.length;";
44 Script2 += "mass=document.getElementById ('" + this.ClientID + "').value.split(';');";
45 Script2 += "var i;var j;for(i=0;i<mass.length-1;i++) {";
46 Script2 += "m2=mass[i].split(',');if (m2.length==3){for(j=0;j<x;j++){";
47 Script2 += "if (m2[0]==Ctrls[j].id)";
48 Script2 += "{Ctrls[j].scrollTop=m2[1];";
49 Script2 += "Ctrls[j].scrollLeft=m2[2];";
50 Script2 += "}}}}}";
51 Page.ClientScript.RegisterStartupScript(Page.GetType(), "Scroll", Script + Script2, true);
52 }
53 }
54 }
55
56 public partial class vvod : System.Web.UI.Page
57 {
58 protected void Page_Load(object sender, EventArgs e)
59 {
60 } |
| Вернуться к списку исходников в категории Общие вопросы программирования на ASP.NET |
|
|
 |
 |
 |
 |
|
|