REPOSITIONNEMENT DE LA SCROLLBAR APRES UN POSTBACK
cs_Domilo
Messages postés32Date d'inscriptionjeudi 31 janvier 2002StatutMembreDernière intervention22 février 2005
-
3 sept. 2003 à 14:59
WebGourou
Messages postés3Date d'inscriptionlundi 30 juin 2003StatutMembreDernière intervention26 février 2010
-
27 mai 2004 à 11:36
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
guillrich
Messages postés11Date d'inscriptionmardi 16 septembre 2003StatutMembreDernière intervention23 mars 2009 12 mai 2004 à 22:30
J'ai téléchargé le code et je ne suis pas certain de comprendre comment l'utiliser dans mon code. Pourrais-je avoir un exemple facile qui pourrait m'expliquer un peu plus comment l'intégrer dans mon code-behind?
Merci
WebGourou
Messages postés3Date d'inscriptionlundi 30 juin 2003StatutMembreDernière intervention26 février 2010 12 déc. 2003 à 17:38
D'accord, mais ca fait la meme chose que mon control et en plus je peu le generer dynamiquement dans le codebehind
avec
monControl c = new monControl();
monPlaceHolder.Controls.Add(c);
A+
deomis
Messages postés1Date d'inscriptionmardi 7 janvier 2003StatutMembreDernière intervention12 décembre 2003 12 déc. 2003 à 15:40
il existe beucoup plus simple :
en gros il suffit de déclarer un champs caché puis lui ajouté runat=server pour la gestion du viewState puis d'appliquer ma petite fonction javascript et le tour est joué.
//pour la gestion facilité du viewState on est obligé de mettre les champs en runat:server
<SCRIPT language="javascript">
var x = document.getElementById('TscrollLeft').value;
var y = document.getElementById('TscrollTop').value;
window.onload = function()
{
window.scrollTo(x,y);
}
//des que l'utilisateur scroll la page
window.onscroll = function()
{
document.getElementById('TscrollLeft').value = document.body.scrollLeft;
document.getElementById('TscrollTop').value = document.body.scrollTop;
}
</SCRIPT>
Attention des fois dotnet renomme ces controles prefixé par le nom de la page(ex :" id=page:'TscrollLeft' ")
WebGourou
Messages postés3Date d'inscriptionlundi 30 juin 2003StatutMembreDernière intervention26 février 2010 4 sept. 2003 à 21:59
Effectivement mais cela ne marche que sur IE, et encore je sai meme pas si ce n'est pas que sur IE 6 alors...
cs_Domilo
Messages postés32Date d'inscriptionjeudi 31 janvier 2002StatutMembreDernière intervention22 février 2005 3 sept. 2003 à 14:59
Il existe le paramètre smartNavigation qui semble faire la même choses saufe erreur?
27 mai 2004 à 11:36
12 mai 2004 à 22:30
Merci
12 déc. 2003 à 17:38
avec
monControl c = new monControl();
monPlaceHolder.Controls.Add(c);
A+
12 déc. 2003 à 15:40
en gros il suffit de déclarer un champs caché puis lui ajouté runat=server pour la gestion du viewState puis d'appliquer ma petite fonction javascript et le tour est joué.
//pour la gestion facilité du viewState on est obligé de mettre les champs en runat:server
<SCRIPT language="javascript">
var x = document.getElementById('TscrollLeft').value;
var y = document.getElementById('TscrollTop').value;
window.onload = function()
{
window.scrollTo(x,y);
}
//des que l'utilisateur scroll la page
window.onscroll = function()
{
document.getElementById('TscrollLeft').value = document.body.scrollLeft;
document.getElementById('TscrollTop').value = document.body.scrollTop;
}
</SCRIPT>
Attention des fois dotnet renomme ces controles prefixé par le nom de la page(ex :" id=page:'TscrollLeft' ")
4 sept. 2003 à 21:59
3 sept. 2003 à 14:59
<%@ Page ... smartNavigation="True"%>