2009-06-26 10 views
1

Ich habe keine Ahnung, wie dies zu tun, und ich brauche Hilfe bitte. Ich benutze asp.net und ich habe ein div mit Überlauf: Auto-Set. Das div zeigt Begriffe und Vereinbarungen. Ich habe auch eine asp.net Checkbox Kontrolle mit sichtbar auf "false" gesetzt. Was ich will, ist eine Möglichkeit, das Kontrollkästchen sichtbar zu machen = "wahr", nur nachdem der Benutzer den ganzen Weg nach unten scrollt. Ich habe versucht, eine JavaScript-Funktion hinzuzufügen, die aufgerufen wird, wenn onmouseup ausgelöst wurde, aber ich glaube nicht, dass dieser Code funktioniert, und ich habe keine Ahnung, wie das Kontrollkästchen-Steuerelement sichtbar = "true" aus dem JavaScript-Code.ASP.NET wie zu sagen, ob Div nach unten scrollt

function checkScrollPosition(elem) { 
    if(elem.scrollHeight<(elem.scrollTop+elem.offsetHeight)) { 
    document.getElementById("CheckBox1").style.visibility = "visible"; 
    } 

Antwort

0

Zweifellos versuchen Sie sicherzustellen, dass jemand eine EULA oder eine Art von Vereinbarung gelesen hat.

Der einzige Weg, dies halb wirksam zu tun, ist mit clientseitige JavaScripting und Sie müssen ein Ereignis auf dem Scroll auslösen. Ich würde vorschlagen, ein Steuerelement zu erstellen, das wie Ihr div mit Überlauf mit Ihrem eigenen Scroll-Steuerelement auf der linken Seite, die wie der Browser scrollt LOOKS aussieht.

Auf diese Weise können Sie ein Bildlaufereignis für eine Mausaktion auslösen, bei der die aktuelle height-Eigenschaft oder etwas, das den Standort des Benutzers auf dem Ziel-DIV bestimmt, berücksichtigt wird.

0

Warum nicht einfach das Kontrollkästchen an der Unterseite des div? Sie würden sowieso scrollen müssen, um dorthin zu gelangen ...

+1

Ich mache das für jetzt, aber es ist nicht das, was gewünscht wird. Ich muss herausfinden, wie das geht. – jumbojs

0

Für meinen Teil ist dies wahrscheinlich einer der nervigsten Designs überhaupt. Das Durchblättern der EULA ist nicht dasselbe wie das Lesen - wenn Sie wirklich sicher sein wollen, dass sie es lesen, müssen Sie sie auf den Inhalt überprüfen. Eine Frage zum Inhalt jedes Absatzes sollte es tun, mit vier Multiple-Choice-Antworten für jeden ... :-)

Sie werden entweder die EULA lesen, oder nicht. Sie zu scrollen, wird das nicht ändern.

+1

Noch einmal, es sind keine Meinungen, die ich suche, es ist eine Antwort auf meine Frage. Wenn jemand das will, so machen wir es. Wenn Sie nicht wissen, wie man die Frage beantwortet, unterlassen Sie bitte. – jumbojs

1

Ihre Antwort liegt wirklich nicht in ASP.NET, sondern eher in der Javascript-Seite. Sehen Sie sich das jQuery-Framework an, ich wäre überhaupt nicht überrascht, wenn so etwas eingebaut ist oder wenn jemand ein Plug-in hat, das es tut. Bei ASP.NET geht es jedoch eher um serverseitige Verarbeitung als um clientseitige Verarbeitung, und was Sie wollen, ist vollständig clientseitig.

Nicht sagen, dass es nicht in .NET getan werden konnte, ich bin mir sicher, dass es könnte, aber es wäre (IMO) mehr Aufwand als es wert ist, wenn es viel einfacher ist, es in Javascript zu behandeln.

Entschuldigung, ich habe keine ausführlicheren Informationen für Sie, aber grabe dich mit jQuery, du wirst wahrscheinlich etwas finden, das du benutzen oder zwicken kannst, um genau das zu bekommen, was du willst.

EDIT: Es gibt einige jQuery-Code über die Hälfte this Seite, die etwas haben könnte, die Sie verwenden können.

0

Ich glaube, dass Sie überprüfen möchten, ob (div.clientHeight + div.scrollTop == div.scrollHeight).

Verwandte Themen